一个关于API的函数问题 我的理解是不是这样的?

开发编程  |  电脑网络

每个API函数 都有一个返回值类型 也是函数的数据类型 那么这个API函数运行后得出的结果是不是 跟这个函数的数据类型一样 然后在以这种类型保存在内存中 比 如 int MessageBox(HWND hWnd,LPCTSTR lpText,LPCTSTR lpCaption,UINT UType); 这个函数 他的运行结果的类型是不是以int 型的数据保存在内存中
分享:
2014-10-04

2014-10-04最佳答案

这么一个简单的问题,你执着的问了3遍了啊。。。首先你的理解有一个误区:“这个函数的数据类型”,在C语言中,没有这个说法。函数,本身就是一个代码段的组合,“这个函数的运行结果”这个理解也不准确,函数可能做了很多操作,返回值,只是函数最后希望并约定返回给调用者的一个变量!这个变量怎么来的呢?你约定了什么就是什么,比如:int funTest(int i){ return i+2;//这个就是返回值}double funTest(double i){ return 1.01; //同样的函数名,这个也是返回值,这只是实现者和调用者的约定!}“运行结果的类型是不是以int 型的数据保存在内存中”,这个应该这样理解:当函数执行完毕后,会根据返回值的类型申请一个临时内存空间并存放返回值。不知道以前你学的什么,为什么在概念上和C的理解有偏差,还是建议你多看看基础C语言语法类书籍。