#include<conio.h>
#include<dos.h>
#include<graphics.h>
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<ctype.h>
#include <malloc.h>
typedef struct sturecord /*库结构*/
{
char rq[8];
char mc[10];
char zl[10];
char gg[10];
char sl[10];
char dj[10];
char je[10];
char bz[10];
}stu;
void ruku_sub();
void main()
{ stu*u;
ruku_sub();
printf(“%s”,u->rq);
printf(“%s”,u->mc);
printf(“%s”,u->zl);
printf(“%s”,u->gg);
printf(“%s”,u->sl);
printf(“%s”,u->dj);
printf(“%s”,u->je);
printf(“%s”,u->bz);
getch();
}
void ruku_sub()
{ stu*u;
u=(stu*)malloc(sizeof(stu));
scanf(“%s”,u->rq);
scanf(“%s”,u->mc);
scanf(“%s”,u->zl);
scanf(“%s”,u->gg);
scanf(“%s”,u->sl);
scanf(“%s”,u->je);
scanf(“%s”,u->bz);
}
为什么在运行的时候找不到u的内容,显示乱码?拜求。
>> 本文固定链接: http://www.vcgood.com/archives/2300
>> 转载请注明: heking2005 2008年04月24日 于 C语言帝国 发表
出现的问题由于在主函数和子函数中定义的stu*u;都是局部变量