1 函數調用時前面加(void)
#include <stdio.h>
int main(void)
{
(void)printf("hello");
return 0;
}
函數調用時,前面加個(void)到底是做什麼用的?
其實對於程序的編譯運行沒有任何影響,目的很簡單就是讓源代碼順利通過一些嚴格的檢查工具的檢查如lint。如果返回值不被處理,有些檢查工具就會報警告,爲了消除這種無所謂的警告,採用了這麼一種欺騙手法。
2 變量前(void)
int main(void)
{
int a=0;
(void)a;
return 0;
}
這也是一種僞裝手法,對程序沒有影響,目的是消除編譯器的警告。如果一個變量定義了,但是沒有被後續代碼使用,編譯器就會給出警告,而(void)a;這樣的代碼雖然啥也沒做,卻可以消除編譯器產生的警告。