在函式中打印出呼叫者的函式名稱
阿新 • • 發佈:2018-11-20
Linux -c 中列印呼叫函式的名稱
#include <stdio.h> #include <string.h> void func(unsigned char *func_buf) { printf("%s \n",func_buf); } void aaaaa() { unsigned char func_buf[50] = {0}; sprintf(func_buf, "%s", __FUNCTION__); func(func_buf); } void bbbbb() { unsigned char func_buf[50] = {0}; sprintf(func_buf, "%s", __FUNCTION__); func(func_buf); } int main() { unsigned char func_buf[50] = {0}; sprintf(func_buf, "%s", __FUNCTION__); func(func_buf); aaaaa(); bbbbb(); return 0; }
執行結果:
[email protected]:/home# ./test
main
aaaaa
bbbbb
[email protected]:/home#
定義一個數組儲存函式名字串。