[問題] C 的字串與記憶體問題
各位好:
請問下面這一段程式有什麼問題嗎
void getMemory(char* p, int num)
{
p = (char*)malloc(sizeof(char)*num);
}
void main()
{
char* str = NULL;
getMemory(str, 100);
strcpy(str, "Hello");
}
執行時會在 strcpy(str, "Hello") 發生錯誤
是因為用 malloc 產生的動態字元陣列不能以 strcpy 分配值嗎?
那正確寫法應該是怎麼樣呢?
謝謝大家
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.137.81.146
→
10/02 00:09, , 1F
10/02 00:09, 1F
推
10/02 00:09, , 2F
10/02 00:09, 2F
→
10/02 00:10, , 3F
10/02 00:10, 3F
→
10/02 00:10, , 4F
10/02 00:10, 4F
→
10/02 00:11, , 5F
10/02 00:11, 5F
推
10/02 00:11, , 6F
10/02 00:11, 6F
→
10/02 00:12, , 7F
10/02 00:12, 7F
→
10/02 00:13, , 8F
10/02 00:13, 8F
→
10/02 00:15, , 9F
10/02 00:15, 9F
→
10/02 00:22, , 10F
10/02 00:22, 10F
→
10/02 00:24, , 11F
10/02 00:24, 11F
→
10/02 00:54, , 12F
10/02 00:54, 12F
→
10/02 00:55, , 13F
10/02 00:55, 13F
→
10/02 00:55, , 14F
10/02 00:55, 14F
→
10/02 00:56, , 15F
10/02 00:56, 15F
→
10/02 00:56, , 16F
10/02 00:56, 16F
→
10/02 00:57, , 17F
10/02 00:57, 17F
→
10/02 01:01, , 18F
10/02 01:01, 18F
→
10/02 01:02, , 19F
10/02 01:02, 19F
→
10/02 01:02, , 20F
10/02 01:02, 20F
→
10/02 01:03, , 21F
10/02 01:03, 21F
→
10/02 01:15, , 22F
10/02 01:15, 22F
→
10/02 09:20, , 23F
10/02 09:20, 23F
→
10/02 12:06, , 24F
10/02 12:06, 24F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章