VC++中设置flag的作用

来源:百度知道 编辑:UC知道 时间:2024/05/14 02:31:16
尽量详细些

flag 是一个标志变量,它是控制循环是否退出的变量

例子:

#define MAX 5
#define LEN 10
main()
{
int i,flag=0;
char name[LEN];
static char list [MAX][LEN]={"Zhang","Wang","Li","Tan","Ling"};
printf("Enter your name:");
gets(name);
for(i=0;i<MAX;i++)
if(strcmp(list[i],name)==0)flag==1;
if(flag==1)
printf("%s is in our class\n",name);
else
printf("%s is not in our class\n",name);

}

flag的作用就是标志着我们是否找到我们输入的名字。
你看flag被初始化为0,意思就是在查找之前呢,我们默认是没找到的。
当strcmp返回0,表示字符数组中有一个字符和我们输入的相同,那么不就是找到了吗?然后我们就把flag设置成0.
那么接着我们再判断flag的值就可以知道我们是否找到字符串了。