c语言函数形参列表是指针 c语言函数参数指针
C语言中,函数形参为指针,调用时的实参为立即数,应该怎么转化类型?
立即数不能转换成指针,因为它不在内存中。(int*)2表示从地址0x02开始的int型的地址空间。如果你的函数形参是指针而实参却需要传递立即数,说明这个函数编的是有问题的。
10多年的温岭网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。网络营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整温岭建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联公司从事“温岭网站设计”,“温岭网站推广”以来,每个客户项目都认真落实执行。
如果你一定要传递,可以用一个中间变量存放立即数,然后传递该变量的地址。
C语言中当形参是指针,实参是什么?当实参是指针,形参是什么?为什么?
第一个问题:
形参是指针,实参就应该是对应数据类型的地址。
例如:
swap(int *x,int *y)
{
int t ;
t = *x;
*x = *y;
*y = t;
}
int main()
{
int a = 2,b=6;
swap(a,b);
//因为swap函数的形参是int类型的指针,所以传入的实参应该是int类型变量的地址
return 0;
}
第二个问题:
当实参是指针的时候,形参应该是什么?
其实很简单,你只要把
第一问列出来 ①实参:地址 ②形参 :指针
一一对应出来 ①实参:指针 ②形参:指针的指针
因为你要在局部函数中改变实参,就需要传递它的地址,指针也是如此,把它类比为int型变量就好了。
个人理解,希望能帮到你,如有不对,欢迎指正
C语言函数里的参数是指针的问题
函数定义和函数调用是两个概念,函数定义 为f(int *arr),表示参数是一个整型指针,因此使用该函数时要传递一个地址,如变量int a=0; 调用函数f传递a的地址时需要写为f(a);而对于数组来说,如int b[]=[1,2,3], b本身就是数组首元素的地址,因此调用函数f传递数组首地址需要写为f(b)。
网页名称:c语言函数形参列表是指针 c语言函数参数指针
文章出自:http://pwwzsj.com/article/ddjegpo.html