亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

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

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

int func();

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

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

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

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);
}
編譯通過(guò)
$ 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: 錯(cuò)誤:too many arguments to function ‘void fun()'
 fun(1, 1);
 ^
test.cpp:3:6: 附注:在此聲明
 void fun();
   ^~~

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

int main(void)

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

相關(guān)文章

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

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

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

    c++ using定義類(lèi)型別名的具體使用

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

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

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

    C++類(lèi)常量和類(lèi)枚舉

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

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

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

    C語(yǔ)言面試常見(jiàn)考點(diǎn)排序總結(jié)

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

    C語(yǔ)言示例代碼講解棧與隊(duì)列

    棧和隊(duì)列,嚴(yán)格意義上來(lái)說(shuō),也屬于線(xiàn)性表,因?yàn)樗鼈円捕加糜诖鎯?chǔ)邏輯關(guān)系為?"一對(duì)一"?的數(shù)據(jù),但由于它們比較特殊,本章講解分別用隊(duì)列實(shí)現(xiàn)棧與用棧實(shí)現(xiàn)隊(duì)列
    2022-05-05
  • tcp socket客戶(hù)端和服務(wù)端示例分享

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

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

    C++編程中__if_exists與__if_not_exists語(yǔ)句的用法

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

    C語(yǔ)言冒泡排序算法代碼詳解

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

最新評(píng)論