C、C++申请指针内存的问题
生活随笔
收集整理的這篇文章主要介紹了
C、C++申请指针内存的问题
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
關(guān)于指針的血和淚的教訓(xùn)
1、指針申請(qǐng)時(shí)一定要檢查是否申請(qǐng)成功,當(dāng)項(xiàng)目比較龐大時(shí),內(nèi)存有可能申請(qǐng)不成功導(dǎo)致程序中斷,而這時(shí)候往往無從知道哪里出現(xiàn)了問題。如下:
double* wid = (double*)malloc((num+1) *sizeof(double));//存儲(chǔ)每個(gè)矩形的寬if (wid == NULL){cout << "Fail to allocate memory to wid" << endl;exit(1);}memset(wid, 0, (num + 1) *sizeof(double));//初始化為02、指針申請(qǐng)后要先初始化為0,防止不正確使用指針時(shí),里存留的數(shù)據(jù)對(duì)后續(xù)造成影響。
3、手動(dòng)申請(qǐng)的指針一定要手動(dòng)釋放!否則內(nèi)存泄漏
free(wid);wid = NULL;? ? malloc和free,new和delete。總結(jié)
以上是生活随笔為你收集整理的C、C++申请指针内存的问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 借助opencv将unsigned ch
- 下一篇: C++ vector的释放