重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
【void的含義】
10年積累的網站設計、網站制作經驗,可以快速應對客戶對網站的新想法和需求。提供各種問題對應的解決方案。讓選擇我們的客戶得到更好、更有力的網絡服務。我雖然不認識你,你也不認識我。但先網站設計后付款的網站建設流程,更有沾益免費網站建設讓你可以放心的選擇與我們合作。
void的字面意思是“無類型”,void
*則為“無類型指針”,void
*可以指向任何類型的數據。
void幾乎只有“注釋”和限制程序的作用,因為從來沒有人會定義一個void變量,
void真正發揮的【作用】在于:
(1)
對函數返回的限定;
(2)
對函數參數的限定。
我們知道,在定義函數時,加在函數名前的“void”表示該函數沒有返回值。但在調用時,在函數名前加“(void)”的作用又是什么呢?
最明顯的一點就是表示程序并不關心調用該函數后的返回值是什么,比如函數strcpy,我們直接用“strcpy(des_str,
src_str);”這樣的形式來調用?!?void)strcpy(des_str,
src_str);”這樣的形式還真不多見!
原因是這種寫法不針對人,也不針對編譯器,而是針對靜態代碼檢測工具,它會把函數返回值作為一項檢測標準。在某些大公司,比較重視代碼規范,若在代碼靜態檢測時需要檢測該項。此時就需要用在被調用的函數(名)前加上“(void)”這種形式來告訴靜態代碼檢測工具程序并非沒有處理該函數的返回值,而是該處確實不需要處理它(該函數的返回值),不需要再對該處代碼作此項檢測。其實這和我們在代碼中使用“#pragma
warning
(disable:
XXXX)”的道理是一樣的。
l例如:
統計整數里面各位
1
2
3
的個數
//***************************************************
#
include
stdio.h
int
c1,
c2,
c3;
void
fun(long
n)
{
c1
=
c2
=
c3
=
0;
while
(n
!=
0)
{
switch
(n
%
10)
{
case
1:
c1++;
break;
case
2:
c2++;
break;
case
3:
c3++;
}
n
/=
10;
}
}
int
main()
{
long
n;
scanf("%ld",
n);
//輸入整數n
fun(n);
//調用自定義函數fun
printf("C1=%d
C2=%d
C3=%d\n",
c1,
c2,
c3);
//輸出
}
把main函數中的void my();中的void去掉,調用函數是不用加void的,望采納!
可以說加不加int是沒有區別的。在ANSI C的標準中,main的標準返回值是整型,如果你什么都沒有加,編譯系統會自動加上int類型的。這時如果你使用GCC的話(VC是沒有的)會有一個警告。
void是無類型,表示沒有返回值,你的主函數如果不需要返回的話,最好加上它。
最后,建議你的主函數顯式的使用int類型,并return 0;這是一個好習慣,開始的時候沒什么用,時間長了才能看出來。
void意思是主函數(main)的數據類型空返回值。
void的字面意思是“無類型”,void *則為“無類型指針”,void *可以指向任何類型的數據。
沒有返回值的函數:功能只是完成一個操作,應將返回值類型定義為void,函數體內可沒有return語句。
有返回值的函數:函數的最后會有一個返回值return,可以用來獲取該函數執行結果返回給該函數,讓外部調用該函數的。
擴展資料
void的使用
示例:
add ( int a, int b )
{
return a + b;
}
int main(int argc, char* argv[])
{
printf ( "2 + 3 = %d", add ( 2, 3) );
}
參考資料來源:?百度百科—void
參考資料來源:百度百科—返回值