如何判断C++的返回值是0还是NULL

2020-11-17 10:15:47 字数 4160 阅读 8168

1楼:静心先生

0是一个数值,null是什么都没有,f()==null为真即为null,反之不是

c语言中返回值为空和返回值为零分别是什么意思?

2楼:匿名用户

在c语言中,返回值是没有强调说一定要有,但做为编程规范就要求一定要写。返回值为空,就没有返回值,也就没有return语句。那么格式如下:

void main()返回值是0,即有返回值,就有return语句。格式如下:int main() 在这里的返回值看上去我们好像是用不到,但是系统在执行完程序后会对返回值加以判断,结果是对还是错,还是有异常等,就可以反馈回来加以修改程序。

3楼:匿名用户

返回值为空:意思就是像人家给你借茶壶用,用了后拿还你,但茶壶里面什么东西都没有,就为空。返回值为空一般是在字符串变量函数里面。

比如在语文课本里面找“高兴”两个字,如果找得到,就返回该课的课题名称,如果找不到这两个字,就要返回空,表示这本书里面没有“高兴”这么两个字。返回值0:意思和上面个差不多,只是这个相对的是数值型的,同样的例子,要求在一本书里面找“高兴”两个字,如果找得到就返回该课的课题编号,如果找不到,就返回0,表示这本书里没有“高兴”两个字!

4楼:匿名用户

return 0;返回的是 0void,程序中没有写return语句,没有什么返回,调用者不需要这个返回值

一个是有返回值(0),一个是没有返回值。

c++中return null和return 0有什么区别,还有程序运行到return时是不是就不继续往下读了,直接返回函数值

5楼:匿名用户

return null 返回的 是一个空地址 即0x00000000 这个是一个地址

return 0 返回的是一个数字 是int类型的值 代表数字0

int main()

main 的返回值 就是 1

6楼:悬壶济公

类似这样的,我写一个与这个一样的例子吧

int a()

这里就利用一个while的死循环,但是由于循环中有return,所有循环是不会循环下去的,一到return就跳出整形函数,也不会输出that is it,同理于do()跟go()这里的两个方法,根本不会执行go(),至于你问到的return 0与return null有什么区别,return 0是用在整形函数里面的一种返回方式,return null则可以用于任何函数,但返回的是一个空,比如你可以在char,int,boolean等函数中运用到null,但只有int是可以返回0.

7楼:匿名用户

你看看null是怎么定义的,如果null定义成0,那就跟return 0一样,否则就不一样

如果是return了,函数马上返回,不再执行后面的,因此go()不再执行

8楼:匿名用户

对的哦,遇到return 这个函数就结束了return 0;

是返回一个整型的0

return null;

是返回一个空指针

9楼:匿名用户

null 是空指针。

return 就返回 程序不继续

c++ ,返回值类型怎么判断需要*还是不需要* 20

10楼:匿名用户

需要的。

public void init() }

c++ 引用传递对象 如何判断是否是null

11楼:

你的node &node是node变量的引用,不需要if(node!=null),这种null判断一般用于指针判断。

printinorder(node.lchild);

这里,你node.lchild应该是一个指针,你的printinorder要求传值,你需要解引用,即:

printinorder(*(node.lchild));

若是传入node *node的话,才需要判断node!=null,而传指针的话,除非你里面要修改指针指向,否则也不需要node *&node(该用法,可以修改指针指向,相当于node **node)。

12楼:匿名用户

void printinorder(node& node)}

c++怎么给实例返回null?

13楼:匿名用户

null是对指针而言的,不能用于对象本身

可以这样:

aa* aa()

另外,c++提倡用0代替null

14楼:魔龙嗜血

aa函数返回的是一个结构体类型的数据,而null :指针变量的零值是“空”(记为null)。所以从类型上来说是不匹配的。

所以把函数的返回类型改为指针函数。即返回一个指针类型的数据。

c语言中怎么判定输入是否为空

15楼:匿名用户

acm吧

#include

#incldue

using namespace std;

int main()

{int a,b;

while(cin>>a>>b)

cout

scanf()里规定了输入两个数之间是空格而用cin可以不用管 c++的io流很强大 不需要做这种考虑但是scanf明显比cin快

16楼:匿名用户

1.使用strlen函数来判断输入是否为空,如果返回值为0,就是空。

strlen做的是一个计数器的工作,它从内存的某个位置(可以是字符串开头,中间某个位置,甚至是某个不确定的内存区域)开始扫描,直到碰到第一个字符串结束符'\0'为止,然后返回计数器值(长度不包含“\0”)。

原 型:extern unsigned int strlen(char *s);

头文件:string.h

格 式:strlen (字符数组名)

功 能:计算字符串s的(unsigned int型)长度,不包括'\0'在内

说 明:返回s的长度,不包括结束符null。

2.例程:

#include

#include

intmain()

return0;}

17楼:匿名用户

不用考虑输入为空,程序会暂停等待输入

18楼:匿名用户

if(变量=null)

c++中为什么要尽可能使用0而不是null

19楼:一直很少提问的

???没看懂什么意思,0是指值为0,而null表示对象为空。

比如说,你声明一个对象

classa a;//classa是你自己创建的一个类。

这个a 并没有实例化,那么这个a就为null了。

20楼:

c语言应该是的其它语言就不一定了,有的表示不确定

c++出现返回值为空错误

21楼:金色潜鸟

函数必须是指针型,才能返回字符串: char *delchar();

函数内 s3 必须用static 保证它的生命期: static char s3[100];

下面程序功能是 删去 s1 中 所有 在 s2种出现的字符,并输出。

例如, s1 是 abcd, s2 是 da, 则输出 bc.

#include

#include

using namespace std;

int sum1,sum2;

char *delchar(char *s1,char s2[100]);

int main()

char *delchar(char *s1,char s2[100]);

if (flag!=1) ;

}s3[k]='\0';

return s3;}

22楼:

如果函数有返回值类型,就需要返回一个值,viod类型就不用返回值