读书人

逗号表达式的有关问题求解

发布时间: 2013-08-09 15:16:24 作者: rapoo

逗号表达式的问题,求解

#include <stdio.h>

int main(void)
{
int i = 1, j = -1;
if (i-1,j+1);
printf("能看到我说明if后面的(i-1,j+1)的值不为0\n");
if (!(i-1,j+1));
printf("能看到我说明if后面的(!(i-1,j+1))的值不为0\n");

return 0;
}


逗号表达式的值为最后一项的值,那么为什么i,j的值无论如何改,那两句话总是会输出呢? C?逗号表达式
[解决办法]
你多了个分号
[解决办法]
if (i-1,j+1);
上面已经是完整的一句了,如果条件成立,执行空语句
[解决办法]

#include <stdio.h>

int main(void)
{
int i = 1, j = -1;
//if (i-1,j+1); //分号表示一条语句已经结束了的,就和下一句语句没有联系了
if (i-1,j+1)
printf("能看到我说明if后面的(i-1,j+1)的值不为0\n");
//if (!(i-1,j+1));
if (!(i-1,j+1)
printf("能看到我说明if后面的(!(i-1,j+1))的值不为0\n");

return 0;
}

读书人网 >C语言

热点推荐