if ( strcmp(&s1, "east") ) { if ( !strcmp(&s1, "up") ) sub_4009DD(); puts("YOU KNOW WHAT YOU DO?"); exit(0); }
时间: 2024-05-31 10:10:58 浏览: 10
这是一个简单的C语言if语句,判断字符串s1是否与"east"相等。如果不相等,则判断是否与"up"相等,如果相等则调用sub_4009DD()函数。如果s1既不是"east"也不是"up",则输出"You know what you do?"并退出程序。需要注意的是,字符串比较应该使用strcmp函数,而不是直接使用字符串地址。因此,这段代码的第一行应该改为strcmp(s1, "east")。
相关问题
if ( !strcmp(s1, a1)
) 的意思是什么?
这是一个条件语句,判断字符串s1和字符串a1是否相等。如果相等,则返回0(即false),否则返回非0值(即true)。其中,strcmp函数是用来比较两个字符串是否相等的函数。
if(1&&!strcmp)
这是一个条件语句的开始,判断条件为1(即true)并且!strcmp(即strcmp返回false)。
条件中的!strcmp表示对strcmp函数的返回值进行逻辑非运算,如果strcmp返回0(即字符串相等),则!strcmp为1(即true),否则为0(即false)。
因此,条件if(1 && !strcmp)将会执行其后的代码块,只有在strcmp返回false时才会执行。