c語言中可不可以直接在函式首部直接給引數賦值

2021-06-25 14:47:34 字數 743 閱讀 9107

1樓:匿名使用者

不明白你的意思……是不是類似於這樣 int hello(char a,int i = 4,int m = 9){} ?

這樣在c語言中是不可以的,這是c++的概念,預設引數,使用方法如下:以上面的hello函式為例

hello(n); 預設i=4,m=9。 hello(n,5,23); 這裡在函式中i = 5,m = 23.

就是說,如果呼叫時給引數賦值了,就使用賦值的,如果沒有,就使用預設的

需要標明一點,這種函式參數列有個規則,就是所有的預設引數都靠後,即:int hello(int a = 1,int b,int c=23){} 是錯誤的……而且,使用時,也不可以跳過一個預設值給後面的值賦值,如:

int hello(char a,int b= 12,char c = 'd')如果想引數b使用預設而給c賦值,那麼必須是hello(a,12,c),如果跳過賦值b,即:hello(a,c);就是錯的,很好理解,這樣就把c賦值給引數b了,一定報錯。

2樓:12狼牙棒棒糖

在函式段裡定義引數的時候可以對其初始化,也就是賦值。

若想在函式外部直接給引數賦值,使用全域性變數宣告extern。

3樓:河科院裡的胖子

可以的,但儘量不要那麼做,會浪費記憶體,等到需要呼叫的時候在進行賦值也不遲的

4樓:星璇少宇

不可以,首部只是宣告函式名和傳遞的變數

C語言中陣列元素的下標可不可以是陣列元素,另外

c語言程式執行時,陣列的存在形式是記憶體中的一塊連續地址空間。而訪問陣列元素時,計算機會將下標做為空間首地址的偏移量來進行定址,所以當然可以是任何整形數。比如int array 10 array的地址是0x7fffff00,那麼在訪問array 3 時,計算機是這樣計算的 每個整形數大小為4個位元組...

可不可以貸款,可不可以貸款

可以申請辦理銀行小額貸款。小額貸款申請條件 1 為年滿十八週歲中國大陸居民 2 有穩定的住址和工作或經營地點 3 有穩定的收入 4 無不良信用記錄,貸款用途不能作為 賭博等行為。5 銀行要求的其他條件。小額貸款辦理流程 1 向當地銀行或者貸款機構提交申請 2 準備貸款所需的各種資料 3 面籤銀行或貸...

榻榻米可不可以不做臺子,直接在上面放床墊

可以的,榻榻米一般就是午後躺上面看會書,休息什麼的 床左邊可不可以放冰箱 床邊還是不建議放冰箱的,現在冰箱雖然非常靜音,但是執行起來還是有一點聲音的,對於睡眠質量不好的人來說是一種困擾 持卡人不是我可不可以可不可以預約取款 不可以的bai。銀行取款的步驟 du 1.攜帶卡 折 身份證zhi前往銀 d...