C语言形参返回里,如果要用int *n返回一个最后得到的整型值k。代码为什么要写成*n=k;?
答案:5 悬赏:20 手机版
解决时间 2021-03-25 11:21
- 提问者网友:寂寞梧桐
- 2021-03-25 00:14
C语言形参返回里,如果要用int *n返回一个最后得到的整型值k。代码为什么要写成*n=k;?
最佳答案
- 五星知识达人网友:摆渡翁
- 2021-03-25 01:26
n=&k,表示把k的地址给指针n
*n=k,表示把k的值赋给指针n所指向的变量
意思不一样
看你具体程序是什么意思了
*n=k,表示把k的值赋给指针n所指向的变量
意思不一样
看你具体程序是什么意思了
全部回答
- 1楼网友:蕴藏春秋
- 2021-03-25 04:24
local variable will released after the function is exited
- 2楼网友:孤独的牧羊人
- 2021-03-25 04:12
这样写是对的,但是和*n = k表达的意思不一样的
- 3楼网友:未来江山和你
- 2021-03-25 03:07
*n实际是你调用函数时给定的调用函数空间里的变量(n=&x), *n在返回之后的空间里,*n=k,的作用相当于x=k,返回后看得到x。
k在定义的函数空间内,返回之后k和n都不存在了。
k在定义的函数空间内,返回之后k和n都不存在了。
- 4楼网友:逃夭
- 2021-03-25 02:45
匿名兄说得不错n是临时变量,函数执行完会自动释放内存,你对他修改是无意义的,而使用n储存的地址去访问的变量在函数调用者那边,修改了,即便函数返回,我们得到的也是修改了的值
比如int* n = &m ;//让n的值等于m的地址
*n = k ;//让m的值等于k的值
n = &k ;//让n的值等于k的地址
&是取得变量的地址,*是通过地址去访问
比如int* n = &m ;//让n的值等于m的地址
*n = k ;//让m的值等于k的值
n = &k ;//让n的值等于k的地址
&是取得变量的地址,*是通过地址去访问
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯