c语言的if(!a)判断报错。

如题。
#include <stdio.h>
void main()
{
int a=3;
if(!a)
{
printf("a=:%d",a);
}
else
{
printf("没执行if");
}
}

第1个回答  2011-05-10

会不会是你编译器的问题。运行过了,没有报错

第2个回答  2011-05-10
我在linux和windows下运行以后都没有错误啊,运行结果是 "没执行if"

zhaojiayi1999 你用的什么编译工具?错误信息是什么?贴出来给大家看看。追问

if3.obj : error LNK2005: _main already defined in waterflower.obj
Debug/pb.exe : fatal error LNK1169: one or more multiply defined symbols found
Error executing link.exe.

追答

你的工程里面有两个main函数:一个在if3()里面,一个在waterflower()里面

解决办法:
一个工程里只能有一个main函数,你可以把其中的一个写成不同的函数,通过另一个main来调用。

追问

具体怎样的?是不是要重新建立一个工程啊?

追答

不用重新建,把其中一个文件的main函数改个名字,通过另一个main函数调用就可以了。
你可以把函数发给我,我帮你改一下541040866@qq.com,发的时候注明函数要实现的功能。

本回答被提问者采纳
第3个回答  2011-05-10
c语言,这样做是允许的。我用了你的代码,是没有问题的,执行的是printf("没执行if")语句。判断报错是什么意思,请说详细些!
第4个回答  2011-05-10
a是常数,if()判断条件是要boolean值的,如果想用用常数做判断,应该写成 if(a!= 3)
第5个回答  2011-05-10
用while(!a)可以,如果用if 应该写成 if(a!= 3)

在C语言中if(!a)表示什么意思?
if( !a )就是一个判断语句,判断表达式 !a 的真假,进而决定是否执行后续操作。如果a是一个变量 当a等于0时,!a=1(为真),执行后续操作;当a不等于0时,!a=0(为假),不执行后续操作;如果a是一个表达式 将表达式的值计算出来,当成变量来操作,判断过程同上。

if (!a)什么意思。下面的题怎么理解?
② !在C语言里是“非”的意思, 就是取逻辑反的操作。那么if (!a)就成了判断“非a”的真假, 也就是a如果是非,那么!a是真。③ 在C里面, 一般定义0是逻辑假,即FALSE;而非0即逻辑真,即TRUE。 因此,这里a=0, 那么!a就是真,因此程序执行顺序是printf("a is False\\n"); 所以屏...

C语言。if(!a)什么意思?举个例子吧!
if(!a) 表示 if(a==0) 或者 if(a==false)虽然写 if(a==0) 或者 if(a==false) 也行,但是直接写if(!a)不就少打很多字符吗 要知道程序员一般都很懒的 而且写 if(a==false)的话,很容易写错成if(a=false)用if(!a) 就可以避免这种错误 ...

C语言问题!请问if(!a)是什么意思??
if(!a)的意思等同于if(a == 0)

C语言if(!a)是什么意思?
从c语言的执行机制来看,因为空字符的ASCII码值为0,所以if(!a)的真正含义是当a为空字符时,执行if函数体的内容。

C语言if(!a)是什么意思?
检测a的值,如果a是0,那么!a就为非零,非零就成立,那么就会执行if内的语句,反之如果a不为0,那么!a就为0,即不成立,就不会执行if内的语句

c语言中: if(!a) 是什么意思?我知道a!=0是a不等于0的意思。有答案必采纳...
就是如果非a 比如说a是0那么非a就是1 那么此时为为真 if以后得语句成立 此时程序继续进行 如果a是非0数 那么非a就是0 此时条件为假 之后的语句不会继续了 不知道你看懂了没

if(!a)是什么意思啊
if(a) 的意思是 ,如果a的值为真,那么就执行 if 后面的语句 。if(!a)的意思是 如果a不为真,那么执行 if后面的语句 !在c语言中的意思相当于 NOT

if(!a)在C语言中是什么意思啊?
if(!a)等于if(a==0)

if(!a)是什么意思?
if(a%2)是对A%2的结果进行判断,如果是非零,则判断为真,否则为假;if(a%2==0)是判断a%2是否为零,是则为真,否则为假。那么如果,a为偶数,那么if(a%2)判断的结果是假,而if(a%2==0)判断的结果是真 所以,估计你这个if(!a)也是c语言的一种吧 ...

相似回答