信号:SIGABRT(已中止)@ realloc

时间:2017-12-02 21:42:36

标签: c realloc

我正在尝试为c-string添加扩展名,但我只是得到Signal:SIGABRT(已中止),有谁可以告诉我这是什么原因?这就是我到目前为止所做的,错误来自函数“prepareFileName”中的@realloc:

main

1 个答案:

答案 0 :(得分:2)

file_name位于程序的文本段(只读)中。使用malloc() + strcpy()分配堆上的空间。

请参阅man realloc

  

除非ptr为NULL,否则必须通过之前的调用返回   malloc(),calloc()或realloc()。