2个回答
展开全部
c语言中定义一个结构体,其变量在编译时就确定好了。而且,编译后,变量的名称就不存在了,换成了相应的内存地址信息。所以,在运行时,再去检查某个变量是否存在,是不合理的操作,系统是不支持的。
可以做的工作是:检测结构体中的变量的值是否为0。如:
#include <stdio.h>
#include <string.h>
struct data {
int num;
char name[11];
int age ;
} student ;
void main()
{
memset( &student, 0, sizeof(student) ); //清理结构体内容为0
if ( student.num==0 ) //如果没有数据,则录入数据
{
printf("input stu_num: ");scanf("%d", &student.num );
printf("input stu_name: ");scanf("%s", student.name );
printf("input stu_age: ");scanf("%d", &student.age );
}
}
代码没有实际意义,只在说明问题。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询