c语言函数返回用什么 c语言函数返回值可以是什么

C语言函数返回类型函数调用结果的返回值 , 可以通过3个途径获得 。
(1)函数自身返回
(2)通过函数参数返回
(3)通过全局量返回 。
到底用那种方法,取决于程序员的考虑 。
Node* --通过函数自身返回,返回一个结构指针,指向 Node 型结构 。
int-- 通过函数自身返回,返回一个整型量 。
CreateLinkList 是建链表,返回Node* 结构指针
GetElem 获取元素单元,返回Node* 结构指针
InsertLinkList 用 int 表示插入成功或失败,或用 int 表示什么 。
这些 都 取决于程序员的考虑 。没有绝对的规定 。
请问C语言中一个函数没有return它返回什么?首先是猜想,主流平台上,函数返回都是通过某个通用寄存器返回 , x86平台是eax,arm是r0,所以猜想即使是void返回,如果硬是要得到返回值的话 , 应该是得到返回那一刻该寄存器的值 。
证实:为了证实,需要写一点代码,一个最简单的void test(){},一个main(){printf("%d", test())},然而这样并不行,无法通过编译,需要使用手段 , 代码如下
【c语言函数返回用什么 c语言函数返回值可以是什么】void test()
{
return;
}
typedef int(*F)(void);
int main()
{
F f = (F)test;
printf("%d\n", f());
return 0;
}
对 , 就是把函数强制转换为返回int再调用,结果并不出人意料,是-858993460 , 这个数看起来没什么意义,不过转成16进制就有意义了,它是0xcccccccc , 在VS的debug过程中,eax总是被初始化成这个值,堆栈内数组也是如此,同时它也是著名的"屯屯屯屯"的来源 。
再把test改一下,进一步验证 , 试图让它返回0,办法是把eax变成0:
void test(){
int i = 1;
i--;
return;
}
猜想这次会输出0,因为i会放进eax里,再进行自减运算 , 结果也得到证实 。
机器环境,win10 64bit,IDE , visual studio 2015 社区版 。
希望有所帮助 。
C语言中返回值是什么,return 怎么用?return 返回值;
这通常可以有两种作用c语言函数返回用什么:
一是直接返回计算所得到的答案 。
例如c语言函数返回用什么:下面的函数返回两个整数的和:
int sum(inr a,int b)
{return a b;
}
二是函数中已经处理或保存c语言函数返回用什么了所有的答案c语言函数返回用什么,通过函数值可以返回本次调用处理的状态代码:例如,一般正常返回0,以及常见出错的代码(预先约定) 。
c语言函数返回数组?在C语言中c语言函数返回用什么,无法直接返回一个数组,但是可以通过返回对应类型指针c语言函数返回用什么的方式,返回数组 。
在大多数情况下,一维数组和一维指针是可以通用的 。
比如,定义一个函数,申请一定长度的整型动态数组,其长度用参数传入,并将结果返回 。如出错,返回空指针NULL 。代码可以写成如下形式c语言函数返回用什么:
int *int_array_create(int n)//参数n为数组元素个数
{
int *r;
if(n=0) return NULL;//参数错误
r = (int *)malloc(sizeof(int)*n);//申请内存空间,大小为n个int长度 。
return r;//返回得到的整型数组的指针 。
}
C语言函数返回值什么意思返回值的意思是将函数实现的结果返回给调用者 。
按标准来说c语言函数返回用什么 , C的main函数是需要有返回值的 。标准中main函数返回类型是int的c语言函数返回用什么,所以需要一个返回值 。但是由于历史原因 , 很多地方可以看到没有返回值的main 。
比如直接main()或者说void main() 但是这样一般编译器也不会认为错误,不过建议还是写标准的C的main函数,最好有一个返回值,0表示正常退出 。
扩展资料c语言函数返回用什么:
常用库函数有c语言函数返回用什么:
scanf格式输入函数
printf格式输出函数
systemdos命令函数
sort排序
main主函数
fgets文件读取字符串函数
fputs文件写入字符串函数
C语言 函数返回值是什么?函数的值(或称函数返回值)是指函数被调用之后c语言函数返回用什么,执行函数体中的程序段所取得的值c语言函数返回用什么 , 可以通过return语句返回 。
return语句的一般形式为c语言函数返回用什么:
return 表达式;
或者c语言函数返回用什么:
return (表达式);
例如:
return max;
return a b;
return (100 200);
函数中可以有多个 return 语句c语言函数返回用什么,但每次调用只能有一个return 语句被执行,所以只有一个返回值 。
一旦遇到 return 语句,不管后面有没有代码 , 函数立即运行结束,将值返回 。例如:
int func(){
int a=100, b=200, c;
return a b;
return a*b;
return b/a;
}
返回值始终 a b 的值,也就是300 。
没有返回值的函数为空类型,用void进行说明 。例如:
void func(){
printf("Hello world!\n");
}
一旦函数的返回值类型被定义为 void,就不能再接收它的值了 。例如,下面的语句是错误的:
int a = func();
为了使程序有良好的可读性并减少出错,凡不要求返回值的函数都应定义为空类型 。
关于c语言函数返回用什么和c语言函数返回值可以是什么的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。

    推荐阅读