當前位置:首頁 » 編程語言 » c語言函數做參數

c語言函數做參數

發布時間: 2025-03-07 01:56:36

A. c語言主函數中的參數有什麼用舉例說明

C語言的帶參數的main函數格式為main(intargc,char*argv[]),其中argc為參數個數加1,argv為參數列表,從argv[1]開始。編譯後生成可執行文件,可以在執行的程序後加參數,比如編譯一個程序為test.exe,則在執行時可以輸入:
test.exe1firestone
在這里,argc等於3,argv[0]為"test.exe",argv[1]為"1",argv[2]為"firestone"。
如果有下面的程序:
#include<stdio.h>
voidmain(intargc,char*argv[])
{
printf("You'veinput%dparameters. ",argc-1);
for(inti=1;i<argc;i++)printf("TheNo.%dis:%s ",i,argv[i]);
}
則上面的輸入會產生如下運行結果:
You'veinput2parameters.
TheNo.1is1
TheNo.2isfirestone

B. c語言自定義函數怎麼帶參數

舉個栗子,比如計算a+b的值的函數

#include<stdio.h>
intplus(inta,intb)
{
intc=a+b;//2.此處定義的c無法被主函數直接調用,因為c為局部變數
return喚輪c;//3.要返回計算結果,只能用return語句
}
intmain()
{
inti=5,j=7;
intans=plus(i,j);//1.該過程中,首先將i,j作為參數(與行鏈液上面的plus函數說明(m,n)一一對應)傳遞給plus函數。
printf("%d"檔物,ans);
}

C. C語言指針變數的賦值和做函數的參數

1、指針變數的賦值,分為定義時賦值(初始化)和單獨賦值,如:

intx;
int*px=&x;//定義時賦值,也稱初始化,注意這里的*是跟隨int的,即變數px是int*類型變數!實際上的賦值語句是px=&x;
int*py;
py=&x;//單獨賦值,將py指向x
*py=10;//這里的*,是引用指針中的數據操作符,*跟隨的變數必須是指針類型變數,否則會出錯!*py就是x,這里相當於x=10;

2、指針變數作為函數的參數時,子函數可以通過指針引用實參地址中的數據,達到修改實參地址中的數據。如:

#include<stdio.h>
voidfunc(inta,intb,int*pmax)
{
if(a>b)*pmax=a;
else*pmax=b;
}
voidmain()
{
inta=2,b=3,max=0;
func(a,b,&max);//這里將變數max的地址傳遞到子函數,子函數中通過該地址,可以修改max的值,達到子函數結束後,max能帶回運算結果的效果。
printf("max=%d ",max);
}

D. C語言 將函數名作為參數被另外一個函數調用

要將函數名作為參數,需要使用函數指針。

函數指針的定義格式為

ret_type (*var_name)(arg_list);

表示返回值為ret_type,參數列表為arg_list的函數指針var_name.

int (*p)(int,int);

表示返回值為int,參數為兩個int型的函數指針p。

以函數指針作為形參,即可實現函數名作為參數,由另一個函數調用。


voidfunc(int(*a)(int))
{
intr=100l;
(*a)(r);
}

即可傳入函數指針,並以r為參數,調用該指針指向的函數。

熱點內容
存儲器的主要指標 發布:2025-03-07 05:16:55 瀏覽:868
comtaobaotaobao文件夾 發布:2025-03-07 04:53:18 瀏覽:692
你存儲的畫面 發布:2025-03-07 04:51:03 瀏覽:417
lol低畫質什麼配置 發布:2025-03-07 04:50:59 瀏覽:352
服務搭建伺服器租用 發布:2025-03-07 04:42:16 瀏覽:429
php判斷當前 發布:2025-03-07 04:38:36 瀏覽:334
qq為什麼老讓改密碼 發布:2025-03-07 04:36:00 瀏覽:467
微信密碼保護怎麼取消 發布:2025-03-07 04:33:48 瀏覽:276
網線的賬號密碼是在什麼中設置的 發布:2025-03-07 04:32:07 瀏覽:255
網站伺服器ip地址改動 發布:2025-03-07 04:31:57 瀏覽:901