易截截图软件、单文件、免安装、纯绿色、仅160KB

从文件读C串的问题

定义了

ifstream fin("in.txt");

比如文件首行是一个数字,第二行是一串字符。

int M;
char* str;

fin>>M;
fin>>str;

M可以读出来,str总是无法读取,就报错了。

如果不读M,一开始就是读字符串的话也可以,但先读一个整型再读字符串就不行了。

为什么呢
str你得先分配内存。

你的str没有申请空间。
试试char* str;
str=new char[100];
fin>>M;
fin>>str;
delete []str;

估计是M后面跟了空格,你只读出来一个空格。。

分配内存
或者你可以用
string str;
fin>>str;

可是我无论是用new char[]还是用malloc分配,运行的时候就会出现

DAMAGE: after Normal block (#157) at 0x00384FB8

如果是没有分配内存的话,为什么一开始就读字符串就可以,而先读整型再读字符串就不行呢


相关问答:

C\C++如何计算函数的导数

C\C++如何计算函数的导数,本人新手,想写个程序,但是不知道如何下手,还望高手指点一二,谢过。
这个……

跟函数的具体形式有关吧,难道你想编出个“万能”的求导函数?

俺上学时想过自动推导公式,后来 ......

C 程序问题 (二) - C/C++ / C语言

问一下:
#include <stdio.h>
int main()
{
  char x, y, z;
  int i;
  int a[16];
  for(i=0; i<=16; i++)
  {
  a[i] = 0;
  ......

使用C的高手请进

大家好!我是一位C爱好者,向大家请教下,C程序员可好找工作?公司用C干些什么?
无所谓好不好找工作,一般通信、系统、嵌入式、硬件方面用的多,而且由于C的底层特性,学会后在学其他的会比较容易

不管用什么语 ......

c中的转义字符问题

    '\108'作为字符常量对不对?
转义字符'\ddd'表示3位8进制所代表的字符。 但是108不是正确的8进制表示方法,因此应该是错误的。
但是char a='\108'; 为什么编译不出错呢?
\108 没超过 ......

大家觉得 C Primer Plus 这本书怎么样呢?

用这本书入门怎么样呢  跟谭浩强的相比如何? 谢谢
我把这本看了几篇,确实很好的书。就不要拿它跟 谭 的书比了, 谭 的书要照顾全国读者。

不可同日而语

一个是国外的,一个是国内的

学完c primer ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号