c語言 inta 是什麼意思,C語言 int a 是什麼意思

2021-03-28 02:24:33 字數 4541 閱讀 5376

1樓:非常可愛

int&a的時候,編譯器不會給a分配記憶體空間,因為它只是另一個變數的標記;

&a是存放a的記憶體地址,比如變數a=1,&a就等於存放這個1的記憶體地址的數值;

例:#include

intmain()

;intb=5;

int*p1=a;

int*p2=&a;

printf("b:%d&b:%d\n",b,&b);

getch();

return0;

}擴充套件資料int&b=i;//這裡b是一個引用,它是變數i的引用引用就是指標,對比如下程式:

voidfunction(int*a)

intmain()

voidfunction(int&a)

intmain()

int&a應該也是voidfunction(int&a)傳遞引數

2樓:左清安賽辛

int&

a是引用的意思,相當於原有變數的一個

副本。比如intn=

4;int&a=

n;此時a和n為同一個東西,改變a的值,就會改變n的值。

在函式的形參中定義引用,也是同一個意思。例如:

void

fun(int&

a);//

函式intn=

4;//

定義變數n

fun(n);

//呼叫fun函式

此時,在fun中使用變數a,就相當於使用變數n,函式中改變a的值,n的值也會同時改變,形參中定義引用,可以將該形參作為輸出引數。

之所以定義引用,優點在於:傳值時,系統會新開闢一段記憶體用於存放輸入函式的值,而使用引用則跳過此步驟,利於提高程式的效率。如果傳入函式的是一個很大的陣列,這點尤其重要。

當然指標也可以實現這個功能,但引用的執行效率比指標更高。

如果不需要在函式中改變引用的值,可以這樣定義void

fun(const

int&a);

3樓:一騎當後

c++中nt &a意思是定義一個引用

,引用相當於指標再取值他和被引用的變數都是表示同一塊記憶體。

(int&)a :不經過轉換, 直接得到a在記憶體單元的值。

(int)a :a在記憶體中的值轉換成int型別。

4樓:水上漂湯

在定義一個變數的時候,*表示指標

比如int * a,表示a是一個指向int的指標int **a相當於(int *) * a,表示a是一個指向int *的指標(通俗點說就是a的值是一個指標,或者說地址),即指向int指標的指標,這是2級指標。

int m = 1;

int *p = &m;

int ** a = &p;

5樓:匿名使用者

nt &b = i;//這裡b是一個引用,它是變數i的引用引用就是指標,兩者沒有區別。我們

可以把引用想象成一個不需要"*"就可以訪問變數的指標,對比如下程式以上兩段程式完成的功能是一樣的。

你那個 int &a

應該也是void function(int &a)這種形式的把,傳遞引數的

6樓:

當int* a和int* b後面都有分號時,int* a;是宣告或說明指向int型變數的指標a,int* b;是宣告或說明指向int型變數的指標b。題面中二者後面都沒有分號,應該說都是錯誤語句。行話這樣表述:

int* a;是宣告int*型指標a,int* b;是宣告int*型指標b。當然要明白,指標的型別是指它指向的目標的型別。

7樓:匿名使用者

int*是指向int的指標

char*是指向char的指標

*a是對指標a解引用

char* p;是宣告一個char*型別的指標*p = &c;把c的地址賦給p指向儲存的記憶體int b = 3;

int* a = &b; // 取b的地址並賦給指標a*a = 4; // 修改a所指向地址的記憶體內容為4,因為a指向b,所以這句執行之後b = 4

8樓:匿名使用者

&a是存放a的記憶體地址,比如變數a=1,&a就等於存放這個1的記憶體地址的數值 a是這個陣列a的起始記憶體單元地址,&a跟a一樣 你可以看看執行下

參考: http:

9樓:匿名使用者

定義指標變數,變數指向整型資料的地址

例如:int * a;

int b=10;

a=&b;

printf("%d",* a);

結果為 10。

10樓:匿名使用者

其實int &a就是定義一個指標的意思

int i,a[8]在c語言中是什麼意思

11樓:匿名使用者

int i,a[8]

是在一行**裡同時宣告瞭兩個變數。

一個變數是i,型別是整形

另一個變數是a,型別是整數陣列(陣列的每個元素是整形),且只能放8個整數。

12樓:緩緩掉落的松針

定義一個整數i和一個整數陣列a,陣列長度為8。

13樓:匿名使用者

定義一個a陣列變數。裡面有8個元素。

14樓:好程式設計師

定義的int型別的陣列a,裡面有8個元素。

15樓:開花的鳥

這是個比較簡化的寫法奧

等價於int i; int a[8] 宣告一個int 值,一個int陣列

16樓:匿名使用者

int在c語言中是整型變數的定義,int i就是定義一個整數變數i,在接下來的使用中i都是整數,比回如你可以

答i=1或者其他整數,如果你讓i=1.1,那麼系統會報錯或者自動轉為i=1;a[8]是陣列,int a[8]就是定義一個最多儲存8個整數的陣列,陣列下標從0到7,當然不一定存滿,但最多儲存8個整數。例如下圖:

c語言中int*是什麼意思

17樓:顏楚隆春

估計你還沒學到這裡,它代表的是指標的型別,int*表示指向整形變數的指標,到了後面.樓主學了也就明白勒!

18樓:great勿忘我

int *表示指標變數存放的是int型別變數的地址

19樓:匿名使用者

指標 呀 *p等於 c 的地址

求問c語言大神: int a[3][4] 那麼a,*a,&a是什麼型別?有什麼區別?

20樓:it圈新鮮事

a是指陣列的首地址,是個地址值;

*a是陣列第一個位置的元素值,是陣列中的數值;

&a不能用於取陣列的地址,本身a就是地址了,不能再次取地址,否則得到的值是錯誤的。但是可以取變數的地址。

21樓:匿名使用者

二維陣列陣列名為陣列指標.

所以a型別為 int (*)[4]

*a就是a[0], 型別為int, 等效於const int *&a是二維陣列指標. 型別為 int (*)[3][4];

22樓:自我程式設計

陣列bai

元素地址是連續的

dua是表示二維陣列的zhi首地址,其值相dao當於專 &a[0][0] 本身是常量指標 不能改變屬其值。

*a是行的首地址 也就是&a[0] 如果你把(*a)+1 那麼值就是 &a[1]

&a值和a一樣,但意義不同,

a表示陣列首地址,a+1就變成第二個元素地址(int 每個元素地址相隔4)

&a表示整個陣列,&a+1就直接跳過整個陣列的記憶體地址空間(相當於跳過了 4*元素個數的地址)

你可以用sizeof(a) 和sizeof(&a) 檢視記憶體大小就知道了

c語言中的f(int a)是什麼意思

23樓:手機使用者

f(int a)//自己定義的函式.. main()

24樓:渾芳潔阿坤

函式名:f,引數列表中,只有一個引數,且型別為int,名稱叫a此函式不返回任何值,即void

在c語言中

void可以省略不寫,

為了方便**閱讀,建議加上void

c語言中inta為啥不對,C語言中inta0為啥不對????

對啊,怎麼不對?宣告int型陣列a,並用一個整型資料0初始化,這個陣列只有一個元素a 0 其值是0,有什麼錯?c語言對陣列的初bai始化賦值還有以下幾點du規定 zhi1 可以只給部分元素賦初值dao。當中值的個內數少於元素個數時,只 給前面部分元素賦值。例如 int a 10 表示只給容a 0 a...

c語言中c什麼意思,c語言中!是什麼意思?

c表示取c的邏輯非,例如if c 表示如果c 0,則語句成立。不曉得你要問什麼 如果想要更確切的解釋,請貼出相關 一種計算機程式語言,是現在運用最廣泛的語言,用於編寫程式 邏輯運算子,取反的意思 真 假 假 真 你確定歎號是中文狀態的嗎?c語言中!是什麼意思?include stdio.h main...

什麼是C語言,C語言是什麼意思?

是一種計算機程式設計語言。它既具有高階語言的特點,又具有組合語言的特點。它可以作為工作系統設計語言,編寫系統應用程式,也可以作為應用程式設計語言,編寫不依賴計算機硬體的應用程式。沒有c 有c c 可以看作c語言的升級版,加入了物件導向的部分同時對一些優化了一些語法。c 可以相容c。c語言是一種高階程...