欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳談C與C++的函數(shù)聲明中省略參數(shù)的不同意義

 更新時間:2017年11月17日 08:22:28   作者:菜鳥明  
下面小編就為大家分享一篇詳談C與C++的函數(shù)聲明中省略參數(shù)的不同意義,具有非常好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

一直都以為C/C++中形如

int func();

這樣的函數(shù)聲明其意義就是一個參數(shù) void(沒有參數(shù))的函數(shù)。然而今天在看C++的時候突然看到這么一句:

對于帶空參數(shù)表的函數(shù),C和C++有很大的不同。在C語言中,聲明
int func2();
表示“一個可帶任意參數(shù)(任意數(shù)目,任意類型)的函數(shù)”。這就妨礙了類型檢查。而在C++語言中它就意味著“不帶參數(shù)的函數(shù)”。

這一點老師并沒有講到,學(xué)校教科書里也沒有提到,帶著好奇心,我特意試了一下

test.c

#include <stdio.h>

void fun();
int main()
{
  fun(1, 1);

  return 0;
}

void fun(int a, int b)
{
  printf("%d\n", a+b);
}
編譯通過
$ gcc -Wall test.c -o test
$ ./test 2
$ mv test.c test.cpp
$ g++ -Wall test.cpp -o test
test.cpp: 在函數(shù)‘int main()'中:
test.cpp:6:10: 錯誤:too many arguments to function ‘void fun()'
 fun(1, 1);
 ^
test.cpp:3:6: 附注:在此聲明
 void fun();
   ^~~

這也解釋了為什么主函數(shù)要寫成這樣的原因

int main(void)

以上這篇詳談C與C++的函數(shù)聲明中省略參數(shù)的不同意義就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • C語言實現(xiàn)散列表(哈希Hash表)實例詳解

    C語言實現(xiàn)散列表(哈希Hash表)實例詳解

    這篇文章主要介紹了C語言實現(xiàn)散列表(哈希Hash表)實例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • c++ using定義類型別名的具體使用

    c++ using定義類型別名的具體使用

    本文主要介紹了c++ using定義類型別名的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-08-08
  • C++ 數(shù)據(jù)結(jié)構(gòu) 堆排序的實現(xiàn)

    C++ 數(shù)據(jù)結(jié)構(gòu) 堆排序的實現(xiàn)

    這篇文章主要介紹了C++ 數(shù)據(jù)結(jié)構(gòu) 堆排序的實現(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • C++類常量和類枚舉

    C++類常量和類枚舉

    這篇文章主要介紹了C++類常量和類枚舉,給類當(dāng)中定義一些常量,可以給所有類的對象使用,比如說我們在類當(dāng)中定義一個數(shù)組,希望可以定義一個常量,用來初始化數(shù)組的長度,那么下面我i嗎就來看看過程當(dāng)如何吧
    2022-01-01
  • C語言實現(xiàn)三子棋游戲的示例代碼

    C語言實現(xiàn)三子棋游戲的示例代碼

    今天我們將會用C語言實現(xiàn)三子棋。所謂三子棋,就是三行三列的棋盤,玩家可以和電腦下棋,率先連成三個的獲勝。話不多說,我們開始吧
    2022-10-10
  • C語言面試常見考點排序總結(jié)

    C語言面試常見考點排序總結(jié)

    深處開發(fā)崗,其實排序也是繞不開的環(huán)節(jié),其中冒泡排序,選擇排序,插入排序,歸并排序,快速排序,堆排序也是我在秋招以來頻繁問到的技術(shù)點,今天我們來重點聊聊排序
    2021-11-11
  • C語言示例代碼講解棧與隊列

    C語言示例代碼講解棧與隊列

    棧和隊列,嚴(yán)格意義上來說,也屬于線性表,因為它們也都用于存儲邏輯關(guān)系為?"一對一"?的數(shù)據(jù),但由于它們比較特殊,本章講解分別用隊列實現(xiàn)棧與用棧實現(xiàn)隊列
    2022-05-05
  • tcp socket客戶端和服務(wù)端示例分享

    tcp socket客戶端和服務(wù)端示例分享

    這篇文章主要介紹了tcp socket客戶端和服務(wù)端示例,需要的朋友可以參考下
    2014-03-03
  • C++編程中__if_exists與__if_not_exists語句的用法

    C++編程中__if_exists與__if_not_exists語句的用法

    這篇文章主要介紹了C++編程中__if_exists與__if_not_exists語句的用法,是C++中用于判斷指定的標(biāo)識符是否存在的基礎(chǔ)的條件判斷語句,需要的朋友可以參考下
    2016-01-01
  • C語言冒泡排序算法代碼詳解

    C語言冒泡排序算法代碼詳解

    大家好,本篇文章主要講的是C語言冒泡排序算法代碼詳解,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-01-01

最新評論