請問各位大俠為何c語言中不能使用如下語句

2022-02-25 15:18:26 字數 1586 閱讀 9967

1樓:

因為c沒有定義int &這種型別,它是c++新增型別,叫「引用型別」。

2樓:汐_楓

&a意思獲取a的地址進行處理,顯然它是一個動作,屬於引用型別,不是以一個變數出現,而宣告只能宣告變數名(本身以名詞來理解),不能宣告引用類資料型別(以動詞來理解。)

3樓:ts毛毛雨

void func(int *a,int *b)

用這樣的指標引數的函式傳遞的就是地址,像樓主這樣定義是不合法的,你定義一個變數時,地址是由編譯器自動分配的,你這個就比如:int &a,a本身就是不存在的,所以也就沒有地址可言,你直接用&a對他取地址,這當然不合法了

如果你想實現"函式功能為交換兩變數的值"這樣的功能的話,用void func(int *a,int *b)就完全可以了,比如你想交換num1和num2兩個變數的值,那你呼叫func函式的時候呼叫格式就是func(&num1,&num2);就可以實現交換值的目的了

4樓:匿名使用者

想要普通引數可以使用

void func(int a,int b)想要使用地址引數改變相應引數,則

void func(int *a,int *b)當然也可以使用

void func(int a,int b)&a,&b是指將地址上的資訊體現出來,如

你定義了

int a,b;

就可以使用

int *p=&a,*q=&b,

在應用函式時單個資料可以直接引用,不必使用地址。

比如你定義函式

void func(int a,int b)則可以在呼叫時

void func(a,b)

如果你定義

void func(int *a,int *b)非要用的話,只能先給其指標引數

int *p=&a,*q=&b;

然後void func(*p,*q);完畢

5樓:繆立軍

c語言不支援引用型別

換指標吧

void func(int *a,int *b)

各位大俠那位能用c語言出這麼一道選擇題

6樓:匿名使用者

1.#include

int main(void)

2.#include

int main(void)

7樓:中國死狗

執行通過

#include

#include

#include

void main(void)

急急急!!!求各位大俠幫回答c語言試題

8樓:匿名使用者

1.b 2.c 3.c 4.b 5.c 6.c 7.c 8.c 9.d 10.b

9樓:電子妓院

b c c d b b a a d d

10樓:奪狼阿木

1.b 2c 3c 4d 5b 6a 7a 8a 9d 10d

關於C語言請問C語言中如何表示根號

對於二次根號,有專門的函式sqrt,例如sqrt 2.0 表示根號2。對於任意次根號下,有專門的函式pow,例如pow 2,0.5 表示根號2,pow 10,1.0 3 表示3次根號下10。在math.h有定義,函式sqrt 引數和返回值型別為 double sqrt double 在c語言中,可以...

C語言中的符號是什麼意思,請問下C語言中 這個符號是什麼意思?

c d f c表示字元的形式,比如 scanf c ch 這時,你通過鍵盤輸入一個字元,比如回a或b等等 d表示十進位制整型答,比如scanf d m 這時,你通過鍵盤輸入一個整數字,比如1或2或3 f表示浮點型,比如scanf f m 這時,你通過鍵盤輸入一個小數,如1.2 或1.5等等 不懂,請...

請問c語言中pb1什麼意思,c語言中ab1是什麼意思

首先p是指標變數,這個意思就是p所指向的地址儲存的內容將變成b 1的值,也就是改變了p指向的值 指標p的值,等於 b 1 c語言中 a b 1是什麼意思 5 相當於這樣 a a b 1 也就是先算出b 1的值,然後乘以a的值,最後賦值給a 相當於a a b 1 比如a為3,b為5 a 3 5 1 首...