社区
C++ 语言
帖子详情
动态分配内存的指针的问题?
cba_v
2008-12-02 01:36:35
刚在 论坛看到的
void GetMemory3(char *p, int num)
{
p = (char *)malloc(sizeof(char) * num);
}
这样怎么是错误的啊? 传地址 不就是 本身在 申请空间吗?
谢谢了
...全文
100
6
打赏
收藏
动态分配内存的指针的问题?
刚在 论坛看到的 void GetMemory3(char *p, int num) { p = (char *)malloc(sizeof(char) * num); } 这样怎么是错误的啊? 传地址 不就是 本身在 申请空间吗? 谢谢了
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cba_v
2008-12-02
打赏
举报
回复
是不是
在函数中只能 修改指针所指向的值 而 修改 指针本身的值(也就是地址) 是不改变的?
xinustc
2008-12-02
打赏
举报
回复
不要以为指针当参数就是传地址
Lovegarfield
2008-12-02
打赏
举报
回复
char* GetMemory2(int num)
{
char* p = (char *)malloc(sizeof(char) * num);
return p;
}
这是对的。
void GetMemory3(char *p, int num)
{
p = (char *)malloc(sizeof(char) * num);
}
这样写,你要明白函数是按值传递的实际上传递进取的是p指针的一个拷贝,所以你对p的值在函数里做任何修改都没有用。
Vegertar
2008-12-02
打赏
举报
回复
paramete passing by value
cba_v
2008-12-02
打赏
举报
回复
但是 p不是在 函数内 声明的指针啊?
Vegertar
2008-12-02
打赏
举报
回复
函数返回时p将会撤消,内存丢失。
C/C++
指针
经典资料大全
C/C++
指针
经典资料大全,十余部经典资料书籍,是您精通C
指针
的理想教程。
C/C++
指针
的13份资料
C/C++
指针
的13份资料 内容丰富,让编程人员不再害怕
指针
为什么要
动态分配内存
?什么时候需要
动态分配内存
?
问:为什么要
动态分配内存
答1:因为内存太宝贵。 答2:如果全部是静止内存不能释放,对于小的程序可以运行完毕。但是对于大的程序,还没运行完,内存就要被占用完,此时就要发生内存泄露。 答3:给定一个占用内存可变大小的变量(假设是数组的长度len),给该变量通过函数
动态分配内存
后,分配内存的大小是根据数组的长度len决定的,假定用户输入len的大小是5,系统就会动态的给该数组分配长度为5的内存,...
c语言 什么时候需要
动态分配内存
?
我讲解一下c语言中
动态分配内存
的函数,可能有些初学c语言的人不免要问了:我们为什么要通过函数来实现
动态分配内存
呢?系统难道不是会自动分配内存吗?? 既然有人会问这样的
问题
,那么我在这里好好的讲解一下吧! 首先让我们熟悉一下计算机的内存吧!在计算机的系统中有四个内存区域: 1)栈:在栈里面储存一些我们定义的局部变量以及形参(形式参数); 2)字符常量区:主要是储存一些字符常量,比如:char
什么时候需要
动态分配内存
?
我讲解一下c语言中
动态分配内存
的函数,可能有些初学c语言的人不免要问了:我们为什么要通过函数来实现
动态分配内存
呢?系统难道不是会自动分配内存吗??既然有人会问这样的
问题
,那么我在这里好好的讲解一下吧!首先让我们熟悉一下计算机的内存吧!在计算机的系统中有四个内存区域:1)栈:在栈里面储存一些我们定义的局部变量以及形参(形式参数);2)字符常量区:主要是储存一些字符常量,比如:char *p_str=
C++ 语言
65,199
社区成员
250,520
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章