【发布时间】:2013-07-19 07:58:57
【问题描述】:
此代码编译但在运行时崩溃。
typedef struct student{
char name[ 20 ];
char last[ 20 ];
unsigned long int ID;
char email[ 20 ];
char BA[ 4 ];
} *stu;
stu source[ 20 ];
for( int i=0; i<11 ;i++ ) //copy from file to array
{
if( fscanf( f1 ,"%s%s%u%s%s", &( source[ i ]->name ), &( source[ i ]->last ), &( source[ i ]->ID ), &( source[ i ]->email ), &( source[ i ]->BA ) ) == EOF );
}
这是它崩溃时弹出的代码,它停在这一行(弹出窗口名称为 input.c)
#ifndef _UNICODE
*(char *)pointer = (char)ch; /* stops on this line */
pointer = (char *)pointer + 1;
我收到的错误消息是“...中未处理的异常 ...exe:0xC0000005:访问冲突写入位置 0xccccccc”。
有人知道为什么吗?
【问题讨论】:
-
这就是你不顾一切地使用指针所得到的……指针只有它所指向的东西才好。
-
文件的内容是什么?为什么使用空代码块的 if 语句?
-
“跑步时暗恋”是指在赶公共汽车时坠入爱河。您要查找的词是“crash”。
标签: c visual-studio-2010