我與動態存儲器工作在C.我正在寫一個小函數應Malloc試圖解決0x0?
- 接受字符串(一個char *)作爲參數;
- 用malloc爲該字符串分配內存,將其複製到內存中;和
- 返回新分配的字符串。
我的程序給出一個分段錯誤。根據GDB,我的程序在這個函數上失敗了,因爲顯然它試圖對地址0x0執行某些操作(?)。 這就是GDB說:
#0 0x00007ffff7b7c3c1 in __strlen_sse2_pminub() from /lib64/libc.so.6
#1 0x00000000004008fc in new_line (line=0x0) at myfile.c:35
任何人都可以提供對malloc的原因似乎根據我的職能被退回,和0x0搞亂,一些見解?我看不到它。
請發表[MCVE] – CollinD
咦?堆棧跟蹤顯示,*** strlen ***不是malloc正在尋址0x0。 – immibis
錯誤消息顯示'(line = 0x0)'這意味着您向該函數傳遞了一個NULL指針。 – user3386109