1、内存分配问题:
1#include<stdio.h>
2int main()
3{
4 char *s,m[20];
5 int i;
6 FILE *fp;
7 fp=fopen("test.dat", "r");
8 /*打开文字文件只读*/
9 fgets(s, 24, fp);
10/*从文件中读取23个字符*/
11 printf("%s", s);
12 /*输出所读的字符串*/
13 fscanf(fp, "%d", &i);
14 /*读取整型数*/
15 printf("%d", i);
16 /*输出所读整型数*/
17 getch();
18 /*等待任一键*/
19
20 return 0;
21}
如果这样就运行的话会出问题,我认为应该是"char *s,m[20];"这里的问题,如果改为"char m[20],*s;"那么就没问题。