char *p=new char[10]; 和 char p[10]; 有啥区别
答案:2 悬赏:60
解决时间 2021-02-19 10:37
- 提问者网友:刀枪不入
- 2021-02-18 22:07
~
最佳答案
- 二级知识专家网友:何必打扰
- 2021-02-18 23:04
char *p=new char[10]; 是动态申请的内存,在堆里面,需要用
delete [] p;进行手动释放;
char p[10];是在栈里的内存,编译器自行释放,不能用语句手动释放
delete [] p;进行手动释放;
char p[10];是在栈里的内存,编译器自行释放,不能用语句手动释放
全部回答
- 1楼网友:何必打扰
- 2021-02-18 23:17
new char[10]的意思是动态定义一个长度为10的字符数组,
然而p=new char[10]就是把动态定义好的那个数组的首地址给p这个指针变量。就可以p++啦
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯