c打印行號和函數
Sometimes, it is necessary to print some message on logic failure or anytime with the function name and line number, so that program can be debugged and fixed the issue.
有時,有必要在邏輯故障時或在任何時候使用功能名稱和行??號打印一些消息,以便可以調試程序并解決問題。
Prerequisite:
先決條件:
__LINE__: To print current line number
__LINE__ :打印當前行號
__func__: To print the name of the current function
__func__:打印當前函數的名稱
Program:
程序:
#include <stdio.h>
float devide(int a, int b)
{
float result;
if(b!=0){
result = (float)a/(float)b;
}
else{
result=0;
printf("Error at line %d in function \"%s\"\n",((__LINE__)-3),__func__);
//ERROR at 3 lines above: ((__LINE__)-3)
}
return result;
}
int main()
{
printf("%f\n",devide(10,3));
printf("%f\n",devide(10,0));
return 0;
}
Output
輸出量
3.333333
Error at line 9 in function "devide"
0.000000
翻譯自: https://www.includehelp.com/c-programs/print-error-message-from-any-function-with-function-name-line-number-in-c.aspx
c打印行號和函數