第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

為什么就算輸了入一百個(gè)數(shù),照樣沒(méi)事;照樣輸出;

為什么就算輸了入一百個(gè)數(shù),照樣沒(méi)事;照樣輸出;

C
呼如林 2023-04-01 14:10:33
#include <stdio.h>  #include <stdlib.h>  #include <string.h>#include <malloc.h>main(){char str[10];char *a;a=(char *)malloc(10*sizeof(char));gets(a);//free(a);puts(a);//結(jié)果意外:就算輸了入一百個(gè)數(shù),照樣沒(méi)事;照樣輸出;printf("%s\n",a);printf("%d\n",_msize(a));}問(wèn)題1:動(dòng)態(tài)內(nèi)存函數(shù)好像沒(méi)意義啊,我用簡(jiǎn)單的char str[10],與a=(char *)malloc(10*sizeof(char));他們不都是占用了10個(gè)大小內(nèi)存么;難道m(xù)alloc的存在就是有些東西只是臨時(shí)存在一下?用完就釋放了,但這樣意義何在,比如我建立數(shù)組的目的就是要存東西,但考慮到怕浪費(fèi)內(nèi)存才想到用malloc,但malloc用free釋放后,里面的數(shù)據(jù)又全沒(méi)有了。再說(shuō)也不靈活,我以為malloc會(huì)自動(dòng)境加大小空間,結(jié)果還是要給個(gè)大小值,那何必!問(wèn)題2:a的值沒(méi)有超,難道m(xù)alloc的功能只是開(kāi)了一個(gè)首地址,后面超的全部自動(dòng)放在連續(xù)地址上么?
查看完整描述

3 回答

?
慕無(wú)忌1623718

TA貢獻(xiàn)1744條經(jīng)驗(yàn) 獲得超4個(gè)贊

malloc就是用來(lái)進(jìn)行動(dòng)態(tài)分配的,由程序員自己分配內(nèi)存,正常情況下一般變量是由系統(tǒng)自動(dòng)分配到棧內(nèi)存中的,而malloc也是動(dòng)態(tài)在堆中分配

查看完整回答
反對(duì) 回復(fù) 2023-04-03
?
侃侃爾雅

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超16個(gè)贊

malloc就是返回一個(gè)由你規(guī)定大小的指針,你可以用它動(dòng)態(tài)的創(chuàng)建一些數(shù)據(jù),用后要用free把指針指向的地址的空間釋放(刪掉)以節(jié)約運(yùn)行空間。

int* p;
p=(int*)malloc(sizeof(int));
*p=55;
printf("%d",*p);
free(p);
另一個(gè)calloc()是返回?cái)?shù)組指針。
type* p=(strcut type*)calloc(n,size);

查看完整回答
反對(duì) 回復(fù) 2023-04-03
?
慕碼人8056858

TA貢獻(xiàn)1803條經(jīng)驗(yàn) 獲得超6個(gè)贊

開(kāi)辟內(nèi)存。比如 int *p; p=(int *)malloc (100*sizeof(int)); 它開(kāi)辟100個(gè)int單元,即400字節(jié)。然后p指向第一個(gè)元素。之后也可以用p[0],p[1]

查看完整回答
反對(duì) 回復(fù) 2023-04-03
  • 3 回答
  • 0 關(guān)注
  • 201 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)