c语言函数不能返回 c语言不能返回数组

为什么c语言中的main()没有返回值呢?

1、void main()表示函数无返回值,就是说在程序的结尾处不需要加上return 0。而return是在函数体中,用来返回特定值的。

目前创新互联已为近千家的企业提供了网站建设、域名、网页空间、网站运营、企业网站设计、和平网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

2、按标准来说,C的main函数是需要有返回值的。标准中main函数返回类型是int的,所以需要一个返回值。但是由于历史原因,很多地方可以看到没有返回值的main。

3、而不是正常退出了之后系统才去处理输出。其次,返回多少是程序员自己控制的,你喜欢将你上面代码的return 0改成return -1,程序就返回-1出去。另外,程序出错的时候,也不会自动返回什么值给系统,全都是程序员自己代码控制。

c语言函数能不能返回结构体

C语言函数的确只能有一个返回值,用返回结构体的方式就很好地解决了需要返回多个返回值的问题。

ANSI C语言标准,明确规定 数组类型和函数类型不可以做为返回值。解决这种返回值的方法是通过指针来间接返回,即使用数组指针和函数指针。这可以做为c语言引入指针的另一个理由。

所谓函数类型是指函数返回值的类型。在C语言中允许一个函数的返回值是一个指针(即地址),这种返回指针值的函数称为指针型函数。

即只在函数ReadFile里有效,函数返回后,ss就失效了。你可以在ReadFile里定义ss的前面加上static修饰,表示这个是静态局部变量,静态局部变量的内存有效范围可以全局有效。

作用域仅限于函数体内,函数调用结束后,副本销毁,而s1的值并没有因为函数的执行而改变。而Change2传递的是指针,指向的就是s1,在函数体的操作就是对s1的操作,这样函数就可以改变s1的值。

C语言字符串函数无法返回值是怎么回事

1、首先函数:char strcat (char x[],char y[])返回值是char型 你在函数中却返回char型指针。其次for语句:for (i = m;i = m + n;i ++)m+n要大于x,y字符串的长度,可能会越界。

2、另外返回值并不一定的我们想要的结果,比如1+1如果返回3了,那就是函数代码有错误。

3、在函数中是无法检查数组(字符串)空间大小的,所以就会一直复制,如果越界了也不会有明显错误,但如果遇到标记为不可写的内存便会运行时报错。输出时也无法检查数组大小,完全根据结束标志输出。

4、这个函数,是将栈内局部变量的地址返回给调用者,调用者拿到的指针属于典型的超出生命周期的指针,对它的使用会不会引起错误,依赖于进一步的操作,本身行为就是不可预期的。

5、但是你不能访问指针指向的内存空间,因为它随着函数结束被释放了。这是C语言的参数及返回值传递机制,也就是值传递。其实C++使用string也就是把字符串封装了,所以好用,但函数传递的本质还是一样。


当前标题:c语言函数不能返回 c语言不能返回数组
文章源于:http://azwzsj.com/article/diodcih.html