日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

c malloc

發布時間:2024/9/30 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c malloc 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

void * malloc ( size_t size );


這是malloc的基本用法,返回指向size個字節的指針,當然一定要強制類型轉換


普及下sizeof的用法

int a[5]

sizeof(a) = 5*4


下面開始介紹二維數組怎么用malloc

比較容易的做法:

int **a;
a = (int **)malloc(sizeof(int *)*3);//3 rows
for(int i=0;i<3;++i)
{
a[i] = (int *)malloc(sizeof(int)*2);
}
int s = 0;
for (int i=0;i<3;++i)
{
for (int j=0;j<2;++j)
{
a[i][j] = s++;
}
}
for (int i=0;i<3;++i)
{
for (int j=0;j<2;++j)
{
cout<<a[i][j]<<" ";
}
cout<<endl;
}


for (int i=0;i<3;++i)
{
free(a[i]);
}

free(a);


第二種做法:

int (*a)[2] = (int (*)[2])malloc(sizeof(int)*3*2);//a是指向一個數組的指針,這個數組的長度為2,元素為int;
a[0][0] =1;
a[0][1] =2;
a[1][0] =3;
a[1][1] = 4;
a[2][0] =5;
a[2][1] = 6;
printf("%d\t%d\t%d\t%d\t%d\t%d\n",a[0][0],a[0][1],a[1][0],a[1][1],a[2][0],a[2][1]);?
free(a);

12 34 56

a[0]是指向數組12的指針

a[1]是指向數組34的指針

。。。


new 和delete

方法1:

int **g = new int *[3];//對于new int *[3]可以在*后面加一個匿名的變量t,變成new int *t[3],按照上面的方法,t向右看,t是一個數組,數組的元素是指向int的指針.最后返回這個數組的指針
for (int i=0;i<3;++i)
{
g[i] = new int [4];
}
g[2][2] = 5;
cout<<g[2][2]<<endl;
for (int i=0;i<3;++i)
{
delete []g[i];
}
delete []g;


也可以int **p = (int **)new int [3];

但是這樣有個問題,如果是char **p = (char **)new int[3]//這邊是假設char*的長度和int是一致的

方法2:
int (*a)[4] = (int (*)[4])new int[12];//a是指向一個數組的指針,這個數組的大小為4,所以a+1就指向下一行了,就是跨越了4個數字
a[2][2] = 5;
cout<<a[2][2]<<endl;
delete []a;

方法3:
int (*b)[4] = new int [3][4];
b[2][2] = 5;
cout<<b[2][2]<<endl;
delete []b;


總結:不管是用malloc還是new,二維數組的動態申請,還是用int (*p)[n]的形勢方便,并且釋放也方便


以上有部分是錯誤的


用int (*p)[n]編譯不過,因為n必須是常量

int(*p)[4]編譯可以通過


標準做法是

int n = 3;int k = 4;int **a = new int *[n];for (int i = 0; i < n; ++i)a[i] = new int [4];a[2][3] = 5;for (int i = 0; i< n;++i)delete []a[i];delete []a;int **a = (int **) malloc(sizeof(int *)*n);for (int i = 0; i < n; ++i)a[i] = (int *) malloc(sizeof(int) * k);for (int i = 0; i < n; ++i){free(a[i]);}free(a);

其實用vector最方便了。。。

總結

以上是生活随笔為你收集整理的c malloc的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 91成人毛片| 成人免费看片98 | 狠狠操综合 | 亚洲综合图区 | 国产精品久久久久久白浆 | 欧美xxxx网站 | 超碰pron| 婷婷综合六月 | 亚洲色图在线观看 | 全部免费毛片在线播放高潮 | 免费午夜av | 国产精品无码专区av在线播放 | 亚洲少妇一区二区三区 | 日韩av免费播放 | 国产乱人乱精一区二视频国产精品 | 比利时xxxx性hd极品 | 国产swag在线 | 亚洲黄色片在线观看 | 中文字幕无码不卡免费视频 | 亚洲人妻电影一区 | 美女屁股眼视频免费 | 激情四射av | 欧美一级黑人 | 国产精品爽爽久久 | 亚洲国产精品va在线 | 日韩成人一区 | 岛国福利视频 | 国产精品熟女视频 | 香蕉视频黄在线观看 | 午夜aaa片一区二区专区 | 欧美日韩tv | 亚洲第一区av | 69xxx少妇按摩视频 | 天堂精品一区 | 蜜桃视频在线网站 | 人妻大战黑人白浆狂泄 | 亚洲经典视频在线观看 | 亚洲区自拍偷拍 | 免费看黄在线观看 | 东北少妇露脸无套对白 | 国产看片网站 | 伊人久久一区 | 深喉口爆一区二区三区 | 尤物精品视频 | 7788色淫网站小说 | 欧美激情自拍 | 国产精品久久久久久亚洲影视 | 亚洲综合一区在线 | 日韩欧美黄色网址 | 久草福利 | 麻豆婷婷| 超碰666| 久久爱成人 | 亚洲精品视频国产 | 国模一区二区三区 | 午夜刺激视频 | 女人18毛片毛片毛片毛片区二 | 可以在线观看的av网站 | 日日夜夜免费精品视频 | 国产成人短视频 | 欧美二区在线观看 | 99久热 | 校园春色亚洲色图 | 国产高清视频在线观看 | 久久xxxx | 真人毛片视频 | 男人爱看的网站 | 欧美 亚洲 另类 偷偷 自拍 | 黄色av电影在线 | jzjzjz欧美丰满少妇 | 欧美午夜在线 | 欧美又粗又长又爽做受 | 久操成人| 成人瑟瑟 | 亚洲高清在线 | 久久成人一区二区 | 99这里有精品 | 婷婷黄色网 | 钰慧的mv视频在线观看 | 亚洲性少妇 | av无码久久久久久不卡网站 | 俺也去av| 亚洲天堂影院 | 欧美久久久 | 免费av国产 | 亚洲区色 | 日韩 欧美 自拍 | 99在线视频观看 | 国产成人精品视频ⅴa片软件竹菊 | 舐め犯し波多野结衣在线观看 | 人妻丰满熟妇无码区免费 | 粉嫩av一区二区白浆 | 欧美偷拍精品 | 日韩久久久久久久久久 | 老司机av导航 | 亚洲国产精品suv | 国产黄色在线免费观看 | 精彩久久| 日韩人妻无码精品久久久不卡 |