[問題] C-動態陣列

作者: LouisFFs (願翱翔)   2015-01-06 21:18:08
小弟剛接觸動態配置的部分,如問了蠢問題見諒謝大大!
為何*array宣告成int就會掛掉?只有char能通過...
void main()
{
int x, num,_scanf;
char *array; //這裡為何不能宣告成int
printf("請輸入陳列大小:");
scanf("%d", &x);
array = malloc(x, sizeof(*array));
for (int i = 0; i < x;i++)
{
printf("請輸入陳列位置%d的數值:",i);
scanf("%d",&_scanf);
array[i] = _scanf;
}
for (int i = 0; i < x; i++)
{
printf("array[%d]=%d\n", i, array[i]);
}
free(array);
system("PAUSE");
return 0;
}
作者: PoorLoser (廢文製造機)   2015-01-06 21:34:00
又是陳列
作者: narukaze (Pt)   2015-01-06 21:36:00
作者: LouisFFs (願翱翔)   2015-01-06 21:42:00
???感恩 小弟研究一下
作者: narukaze (Pt)   2015-01-06 21:44:00
看一下malloc的用法吧...你的malloc用法很奇怪
作者: tjjh89017 (伊達政宗)   2015-01-06 21:44:00
sizeof(int) * n
作者: LouisFFs (願翱翔)   2015-01-06 21:49:00
謝謝建議!
作者: tsoahans (ㄎㄎ)   2015-01-06 22:01:00
陣列!=陳列
作者: ACMANIAC (請肥宅救救肥宅)   2015-01-06 22:06:00
陳列是三小.......
作者: LouisFFs (願翱翔)   2015-01-06 22:23:00
哈哈現在才發現 拍謝 已更改
作者: tj386 (最愛歐陽三姊妹♥♥♥)   2015-01-07 00:13:00
malloc,sizeof(char*),型態 錯太多拉

Links booklink

Contact Us: admin [ a t ] ucptt.com