社区
C++ 语言
帖子详情
如何传递一个临时变量的地址给指针函数
R9R9R9
2005-07-28 02:46:34
int i=10;
int foo()
{
return i;
}
void fun(const int &p)//如何改成指针形式..书中说无法将临时变量的地址传递给指针的函数
//但是既然引用可以.为什么指针就不可以.引用不是也是传地址的吗?
{
cout<<p<<endl;
}
int main()
{
fun(foo());
system("pause");
}
...全文
326
10
打赏
收藏
如何传递一个临时变量的地址给指针函数
int i=10; int foo() { return i; } void fun(const int &p)//如何改成指针形式..书中说无法将临时变量的地址传递给指针的函数 //但是既然引用可以.为什么指针就不可以.引用不是也是传地址的吗? { cout<<p<<endl; } int main() { fun(foo()); system("pause"); }
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
OpenHero
2005-07-29
打赏
举报
回复
学习
sankt
2005-07-29
打赏
举报
回复
学习
R9R9R9
2005-07-29
打赏
举报
回复
UP
R9R9R9
2005-07-28
打赏
举报
回复
TO: copygirl(wa!) ( )
你返回的并非是一个临时对象的地址.而是全局变量的地址..
TO:zhaozhencn(FlyingDonkey)
临时对象可以绑定于一个const 对象的引用(而非const引用则不行). 通过这种绑定,会自动延长临时对象的生存周期.
那为何不可以通过const指引来延长临时对象的生存周期呢?
如:void fun(const int *p)
beyondtkl
2005-07-28
打赏
举报
回复
临时对象不能为左值
同意樓上的樓上.
conglingkaishi
2005-07-28
打赏
举报
回复
跟楼上的学习了。
allen_zhaozhencn
2005-07-28
打赏
举报
回复
临时对象可以绑定于一个const 对象的引用(而非const引用则不行). 通过这种绑定,会自动延长临时对象的生存周期. 临时对象本身是非const的.
由于临时对象本身的生命周期的原因. 使得指针可能指向一个已经析构的对象的地址.而造成不确定的错误. (临时对象不能为左值)
copygirl
2005-07-28
打赏
举报
回复
如果想在fun函数中使用指针,那么foo函数返回的也应该是个指针。
int i=10;
int * foo()
{
return &i;
}
void fun(const int *p)
{
cout<<*p<<endl;
}
void main()
{
fun(foo());
}
xjp6688
2005-07-28
打赏
举报
回复
可以呀
WingForce
2005-07-28
打赏
举报
回复
虾米是临时变量啊
请指点一下
C++参数
传递
(引用,
临时
变量
)
一般的
变量
声明时就创建相应的内存空间,该空间用于存储该
变量
的值。
函数
进行按值
传递
时,是将该
变量
值的拷贝传给
函数
,因此在
函数
中将传进来的值改变也不能改变
变量
的值。
指针
变量
和按
指针
传递
。
指针
类型的
变量
在声明后,根据操作系统的不同创建相应大小的内存空间,该空间上存储的是
一个
地址
,该
地址
指向
一个
变量
。如果
函数
按
指针
进行
传递
参数,也是将
变量
的拷贝传进来,但该
变量
是
一个
指向某内存单元的地...
c语言
函数
指针
的赋值给
变量
,C语言|用
函数
指针
调用
函数
可以增加被调
函数
的通用性和灵活性...
C语言中,
指针
可以和
函数
结合使用,可以返回
一个
指针
,叫做
指针
函数
。也可以用
一个
指针
变量
指向
一个
函数
的入口
地址
,称为
函数
指针
,通过
函数
指针
调用
函数
更加灵活,也更具有通用性。1
函数
的入口
地址
所有
函数
的代码最终都被编入.exe文件并随.exe文件装载到内存之中。若有
函数
max(),设其代码被装载到了如下图的位置,则每次调用max()
函数
时都要从2068处开始执行代码,该
地址
(2068)称为
函数
max(...
结构体
变量
和结构体
指针
变量
作为
函数
参数
传递
问题
字符串赋值:strcpy_s(pstu->name, "张三"); 需要引入头文件:#include <string.h> #include <stdio.h> #include <string.h> struct Student { int age; char sex; char name[100]; }; void InputStud...
深入探究
指针
变量
的值
传递
问题
以前总结过
函数
参数的两种值
传递
方式——值
传递
和引用
传递
,参见这篇博客【
函数
参数
传递
的两种方式——值
传递
和引用
传递
】 并且我们知道:
指针
传递
的本质也是值
传递
! 什么意思呢? 普通的值
传递
是
函数
传入
一个
变量
a,那么
函数
就只能记得a的值并使用之,在
函数
的栈中会有
一个
临时
的
变量
区域存储a的值,当
函数
调用结束的时候该
变量
区域也别销毁了,所以值
传递
就是:
函数
只能使用传入的
变量
值,而试图修改该
变量
的操作都...
34
指针
与
函数
:值
传递
与引用
传递
、
指针
函数
、
函数
指针
、回调
函数
本文深入探讨了 C 语言中的
函数
参数
传递
机制,包括值
传递
、
指针
传递
以及
指针
函数
和
函数
指针
的高级用法。文章详细阐述了如何通过传
地址
或
指针
、传数组给
函数
来实现数据的共享与修改。同时,还介绍了
指针
函数
的语法及多个案例,如返回静态局部
变量
、字符串及较长字符串等。此外,文章还深入讲解了
函数
指针
的概念、语法及实际应用,并通过案例演示了回调
函数
的使用,包括传入库
函数
和自定义
函数
。
C++ 语言
65,187
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章