double Cylinder(h,r) //參數(shù)沒有指定類型啊

思茅網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站設(shè)計(jì)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。成都創(chuàng)新互聯(lián)公司從2013年成立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。
double Cylinder( double h, double r) 改成這樣試試
c語言的主函數(shù),main最多是兩個(gè)參數(shù)
int
argc;
char
**
argv;
其中argc表示,傳入?yún)?shù)的字符串個(gè)數(shù),argv表示參數(shù)中的各個(gè)字符串。
void
funtion1(void)
{
printf("funtion1是無參函數(shù)\n");
}
void
funtion2(int
x)
{
int
y;
y=x;
printf("funtion2是有參函數(shù)\n");
printf("參數(shù)的値是
%d",y);
}
mani()
{
funtion1();
funtion2(8);
}
這里所謂的有參和無參的參是指函數(shù)的參數(shù),也就是上例中的funtion(int
x)括號(hào)中的參數(shù)x
,該參數(shù)的類型是int型。funtion2(int
x)被調(diào)用時(shí)的形式如funtion2(8),也就是x=8,然后把參數(shù)値8傳進(jìn)函數(shù)funtion2,y=8;所以,主函數(shù)main()的運(yùn)行結(jié)果是,
funtion1是無參函數(shù)
funtion2是有參函數(shù)
參數(shù)的値是8
argc代表參數(shù)數(shù)量,后面的數(shù)組代表參數(shù)
我們經(jīng)常用的main函數(shù)都是不帶參數(shù)的。因此main 后的括號(hào)都是空括號(hào)。實(shí)際上,main函數(shù)可以帶參數(shù),這個(gè)參數(shù)可以認(rèn)為是 main函數(shù)的形式參數(shù)。C語言規(guī)定main函數(shù)的參數(shù)只能有兩個(gè), 習(xí)慣上這兩個(gè)參數(shù)寫為argc和argv。因此,main函數(shù)的函數(shù)頭可寫為: main (argc,argv)C語言還規(guī)定argc(第一個(gè)形參)必須是整型變量,argv( 第二個(gè)形參)必須是指向字符串的指針數(shù)組。加上形參說明后,main函數(shù)的函數(shù)頭應(yīng)寫為: main (argc,argv) int argv; char *argv[]; 或?qū)懗桑?main (int argc,char *argv[])
由于main函數(shù)不能被其它函數(shù)調(diào)用, 因此不可能在程序內(nèi)部取得實(shí)際值。那么,在何處把實(shí)參值賦予main函數(shù)的形參呢? 實(shí)際上,main函數(shù)的參數(shù)值是從操作系統(tǒng)命令行上獲得的。當(dāng)我們要運(yùn)行一個(gè)可執(zhí)行文件時(shí),在DOS提示符下鍵入文件名,再輸入實(shí)際參數(shù)即可把這些實(shí)參傳送到main的形參中去。 DOS提示符下命令行的一般形式為:
C:/可執(zhí)行文件名 參數(shù) 參數(shù)……;
但是應(yīng)該特別注意的是,main 的兩個(gè)形參和命令行中的參數(shù)在位置上不是一一對(duì)應(yīng)的。因?yàn)?main的形參只有二個(gè),而命令行中的參數(shù)個(gè)數(shù)原則上未加限制。argc參數(shù)表示了命令行中參數(shù)的個(gè)數(shù)(注意:文件名本身也算一個(gè)參數(shù)),argc的值是在輸入命令行時(shí)由系統(tǒng)按實(shí)際參數(shù)的個(gè)數(shù)自動(dòng)賦予的。例如有命令行為:
C:/E6 24 BASIC dbase FORTRAN ,由于文件名E6 24本身也算一個(gè)參數(shù),所以共有4個(gè)參數(shù),因此argc取得的值為4。argv參數(shù)是字符串指針數(shù)組,其各元素值為命令行中各字符串(參數(shù)均按字符串處理)的首地址。 指針數(shù)組的長度即為參數(shù)個(gè)數(shù)。數(shù)組元素初值由系統(tǒng)自動(dòng)賦予。
main(int argc,char *argv[]){
while(argc--1) printf("%s/n",*++argv);
}
本例是顯示命令行中輸入的參數(shù)。如果上例的可執(zhí)行文件名為e24.exe,存放在A驅(qū)動(dòng)器的盤內(nèi)。因此輸入的命令行為:
C:/a:e24 BASIC dBASE FORTRAN 則運(yùn)行結(jié)果為:
BASIC
dBASE
FORTRAN
該行共有4個(gè)參數(shù),執(zhí)行main時(shí),argc的初值即為4。argv的4個(gè)元素分為4個(gè)字符串的首地址。執(zhí)行while語句,每循環(huán)一次 argv值減1,當(dāng)argv等于1時(shí)停止循環(huán),共循環(huán)三次, 因此共可輸出三個(gè)參數(shù)。在printf函數(shù)中,由于打印項(xiàng)*++argv是先加1再打印, 故第一次打印的是argv[1]所指的字符串BASIC。第二、 三次循環(huán)分別打印后二個(gè)字符串。而參數(shù)e24是文件名,不必輸出
無參函數(shù),是指在主調(diào)函數(shù)調(diào)用被調(diào)函數(shù)時(shí),主調(diào)函數(shù)不向被調(diào)函數(shù)傳遞數(shù)據(jù)。無參函數(shù)一般用來執(zhí)行特定的功能,可以有返回值,也可以沒有返回值,但一般以沒有返回值居多。
有參函數(shù),是指在主調(diào)函數(shù)調(diào)用被調(diào)函數(shù)時(shí),主調(diào)函數(shù)通過參數(shù)向被調(diào)函數(shù)傳遞數(shù)據(jù)。在一般情況下,有參函數(shù)在執(zhí)行被調(diào)函數(shù)時(shí)會(huì)得到一個(gè)值并返回給主調(diào)函數(shù)使用。
擴(kuò)展資料
1、定義有參函數(shù)的一般形式為:
函數(shù)類型 函數(shù)名(參數(shù)類型1 參數(shù)名1, 參數(shù)類型2 參數(shù)名2, …, 參數(shù)類型n 參數(shù)名n)
{
聲明部分
語句部分
}
2、有參函數(shù)使用注意事項(xiàng):
(1)在定義函數(shù)時(shí),必須要指定形參的類型。實(shí)參與形參的個(gè)數(shù)必須相等,若不相等就是語法錯(cuò)誤。此外,實(shí)參與形參的類型要相同或賦值兼容。最好是相同,這樣不容易出錯(cuò)。如果不相同則實(shí)參按形參的類型轉(zhuǎn)化,然后再送給形參。
(2)在傳遞數(shù)據(jù)時(shí),實(shí)參與形參是按順序一一對(duì)應(yīng)的。
當(dāng)前題目:c語言2參數(shù)函數(shù)嗎 C語言函數(shù)不接受2個(gè)參數(shù)怎么解決
轉(zhuǎn)載來于:http://www.chinadenli.net/article28/doospjp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、網(wǎng)站內(nèi)鏈、虛擬主機(jī)、服務(wù)器托管、品牌網(wǎng)站制作、域名注冊(cè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)