程式執行如何得到當前函式資訊(C\C++)
阿新 • • 發佈:2021-01-14
程式執行如何得到當前函式資訊(C\C++)
除錯時列印執行程式碼所在原始檔、行號、函式名
使用巨集
親測可用
FILE 檔名
LINE 行號
FUNCTION 函式名
即可
void my_free(void* p, const char* file, const char* fun, int line)
{
if (p != NULL)
{
puts("current file and function:");
puts(__FILE__);
puts(__FUNCTION__) ;
printf("line:%d/n", __LINE__);
puts("error frome file and function:");
puts(file);
puts(fun);
printf("line:%d/n", line);
}
else
{
/* free(p);
free_count++;*/
}
}
//在函式體(你所除錯的函式體)中新增此程式碼
char* s = "afg" ;
my_free(s, __FILE__, __FUNCTION__, __LINE__);
getchar(); //這個方法是隻執行到這裡就結束了,你要想知道多個函式的資訊就把這行註釋掉