社区
C语言
帖子详情
动态分配内存,这样用有没有问题??
magicsnake
2002-10-21 12:26:10
int a = 6;
char *b = new char[a];
memset(b, '\0', a);
b[0] = '1';
b[1] = '2';
b[2] = '3';
b[3] = '4';
printf("%s", b);
...全文
15
12
打赏
收藏
动态分配内存,这样用有没有问题??
int a = 6; char *b = new char[a]; memset(b, '\0', a); b[0] = '1'; b[1] = '2'; b[2] = '3'; b[3] = '4'; printf("%s", b);
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
magicsnake
2002-10-22
打赏
举报
回复
嗯,分配数组肯定是不能使用变量的,分配内存可以,OK啦!
zshuc
2002-10-21
打赏
举报
回复
恩
laonao0531
2002-10-21
打赏
举报
回复
是这样的;
因为是动态分配的函数不会将其删除,必须手工删除,还有malloc(),但其对应的是free()释放内存,否则将造成内存泄漏啦!!
goodname
2002-10-21
打赏
举报
回复
除了楼上所说的,没别的问题了。
kingfish
2002-10-21
打赏
举报
回复
用完后
delete []b;
lovegreen
2002-10-21
打赏
举报
回复
与编译器实现有关,如g++支持[]中有变量,而HP的aCC不支持。
一些编译器扩展了标准 C,与C++的范围。
step_by_step
2002-10-21
打赏
举报
回复
正是因为是new所以才允许[]内的数字是变量,这样的话才叫动态分配
to qhgary(Shining)
你那是分配数组,不是动态分配内存。
qhgary
2002-10-21
打赏
举报
回复
应该是不允许的,我记得我的老师跟我讲过
int a=10;
int b[a];这样的是不允许的。
除非a是常量
给我分吧
Cauty45
2002-10-21
打赏
举报
回复
本来就是变量,常量还叫动态吗?
magicsnake
2002-10-21
打赏
举报
回复
delete []b;
这一句我漏了,我的疑问是下面这一句
char *b = new char[a];
方括号中可以使用变量????
我定义的是
int a;
不是
const int a;
我记得分配内存的时候,方括号内应该是不允许使用变量才对的呀,可是我在BCB中像上面一样使用却编译通过了,为什么???
lufly2000
2002-10-21
打赏
举报
回复
同意以上所说
mymmsc
2002-10-21
打赏
举报
回复
明白
C++ 中继承与动态内存分配的详解
例如,如果基类使用动态内存分配,并重新定义赋值和复制构造函数,这将怎样影响派生类的实现呢?这个
问题
的答案取决于派生类的属性。如果派生类也使用动态内存分配,那么就需要学习几个新的小技巧。下面来看看这两种...
C++之继承和动态内存分配
如果基类使用动态内存分配,并重新定义赋值和复制构造函数,这将如何影响派生类的实现呢?这取决于派生类的属性,如果派生类也使用动态内存分配,这将如何实现呢?这种大致分为两种情况, 第一种情况:派生类不...
Windows内核-内存管理
- 每个进程都有4GB的空间,但是这4GB空间并不是都在使用,
有没有
一个地方在记录着哪些地址空间已经使用了,哪些没有使用? - 肯定有一个地方在记录 - 怎么记录线性地址是否是可以用的?  ...
修改游戏,内存基址固定不变啦,好吧
如果有的话你应该知道每玩一次就要改一次,因为这个游戏是
动态分配内存
的,每次重新开始都会改变。所以你会选择到网上去下载一个专用的修改器,那么你
有没有
想过自己做一上呢?想过?那你为什么不做?什么不会?那就...
你必须知道的495个C语言
问题
2.22
有没有
一种自动方法来跟踪联合的哪个域在使用? 枚举 2.23 枚举和一组预处理的#define有什么不同? 2.24 枚举可移植吗? 2.25 有什么显示枚举值符号的容易方法吗? 位域 2.26 一些结构声明中的这些...
C语言
69,336
社区成员
243,078
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章