c語言中的與,c語言中的 與 是什麼意思?

2021-03-29 13:01:31 字數 5678 閱讀 8313

1樓:熱詞課代表

最近」盤「字很流行,盤是什麼意思?為什麼能成為網路熱詞?

2樓:匿名使用者

你這麼理解是可以的,

*就是取指標所指地址處儲存的數值,

&就是去一個變數的地址。

例如:int a=10;

print("\n%d",&a); //列印出來的是a的地址print("\n%d",*(&a); //列印出來的是10

3樓:唔現場

例如int a[10]=;

int *p;

p=a;//是把陣列中的第一個元素的地址賦給指標pp=&a[4];//是把陣列中的第五個元素的地址賦給指標p,運算子的作用是在陣列首地址的基礎之上偏移4個地址長度,得到第五個地址,然後賦給p

4樓:匿名使用者

*是指標運算,&是取地址。*後面必須是指標變數,&後面則什麼變數都可以(除了常數)。

c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。

儘管c語言提供了許多低階處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的c語言程式可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(微控制器或稱mcu)以及超級電腦等作業平臺。

二十世紀八十年代,為了避免各開發廠商用的c語言語法產生差異,由美國國家標準局為c語言制定了一套完整的國際標準語法,稱為ansi c,作為c語言最初的標準。

如果一個變數宣告時在前面使用 * 號,表明這是個指標型變數。換句話說,該變數儲存一個地址,而 *(此處特指單目運算子 * ,下同。c語言中另有 雙目運算子 *) 則是取內容操作符,意思是取這個記憶體地址裡儲存的內容。

指標是 c 語言區別於其他同時代高階語言的主要特徵之一。

指標不僅可以是變數的地址,還可以是陣列、陣列元素、函式的地址。通過指標作為形式引數可以在函式的呼叫過程得到一個以上的返回值,不同於return(z)這樣的僅能得到一個返回值。

指標是一把雙刃劍,許多操作可以通過指標自然的表達,但是不正確的或者過分的使用指標又會給程式帶來大量潛在的錯誤。

5樓:無為雲之了了

*p+2 與 * (p+2)不一樣,前者是k,因為*運算級別優先,*p等於『i』,然後加法運算,系統自動轉換『i』為整形(ascll碼105)再+2,此時為105+2等於107,107對應ascll字元『k』,看你的列印方式,也可能就是107!但後者可能就是你想要的,結果為『m』,* (p+2)算是指標偏移,指向『m』

6樓:ynz_痕跡

我想你應該是把*p想成地址了,以為 2就可以打輸出下一個字元了,呵呵,犯了個低階錯誤.首先*p不是地址,初始時它是ch的第一個字元「i」,「i」的asc2碼的值是105,「k」的值是107,所以你把「i」加2,相當於把i的asc2值加2,所以就變成了107,107是k的值,所以就變成k了.

7樓:匿名使用者

按我的理解,c語言中單獨的[ ]什麼也不是。不是中括號,也不是其他的。。。組合使用時可以定義陣列,如int a[10];表示定義一個10個元素的陣列,a[3]=5;表示第三個陣列元素的值是5,int a[2][2];表示定義一個二維陣列。

c語言中,無論是小括號、中括號、大括號,都用()的層數來表示。如(((2+3)*2+5)*3),從裡到外依次為小括號到大括號。。。如果還有更多層數,再加括號就行了。

8樓:臨懷

char *p=ch; p 是ch的地址,也是ch[0]的地址

*p 就是 ch[0], 也就是『i'

'i' + 2 就是 』k'

9樓:匿名使用者

乘,指標 表示一個字串,這個字串有兩個字元,一個有效字元 '*' "*"在c語言中代表指向的內容,它與所指內容合在一起構成指標

10樓:匿名使用者

去飛鬱瞭解一下吧 朋友就是那裡學的

11樓:匿名使用者

&是取地址的.*是定義指標變數的

12樓:熾熱紅翼

*解引用

&取地址

你這麼認為勉強是可以的

13樓:匿名使用者

建議你去飛鬱學習一下

c語言中的*與&是什麼意思?

14樓:匿名使用者

*是指標運算,&是取地址

。*後面必須是指標變數,&後面則什麼變數都可以(除了常數)。

c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。

儘管c語言提供了許多低階處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的c語言程式可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(微控制器或稱mcu)以及超級電腦等作業平臺。

二十世紀八十年代,為了避免各開發廠商用的c語言語法產生差異,由美國國家標準局為c語言制定了一套完整的國際標準語法,稱為ansi c,作為c語言最初的標準。

如果一個變數宣告時在前面使用 * 號,表明這是個指標型變數。換句話說,該變數儲存一個地址,而 *(此處特指單目運算子 * ,下同。c語言中另有 雙目運算子 *) 則是取內容操作符,意思是取這個記憶體地址裡儲存的內容。

指標是 c 語言區別於其他同時代高階語言的主要特徵之一。

指標不僅可以是變數的地址,還可以是陣列、陣列元素、函式的地址。通過指標作為形式引數可以在函式的呼叫過程得到一個以上的返回值,不同於return(z)這樣的僅能得到一個返回值。

指標是一把雙刃劍,許多操作可以通過指標自然的表達,但是不正確的或者過分的使用指標又會給程式帶來大量潛在的錯誤。

c語言中的*與&是什麼意思

15樓:匿名使用者

*指標,*p代表copy地址為p的記憶體裡所存的bai資料。

&代表取a的地址du,&a就是a所在的記憶體zhi地址。

* p =&a 可以理解為 在p這個記憶體段裡dao 存上(記錄)a這個資料的實際儲存地址。

p就是一個記憶體地址編號,直到你輸出他是1502時,咱們才知道他時1502.

p+=2 代表p=p+2

所以應該是1504。

16樓:唐泇三勺

*為取內容,但在定義的時候表示定義一個指標,&表示去地址,每一個變數都有一個對應的地址,int型的指標後移一位即表示指向的地址+2,所以輸出1506

若沒懂指標可以看一下這篇文章指標

c語言中 & 和 && 的區別

17樓:他de生活

區別:1.運算子性質不同。

&是一個位運算子。

&&是一個邏輯運算子。

2.作用不同。

&是將兩個二進位制的數逐位相與,結果是相與之後的結果。

&&就是判斷兩個表示式的真假性,只有兩個表示式同時為真才為真,有一個為假則為假,具有短路性質。

3.用途限制。

&除了是一個位運算子,也是取地址符。

&&就是一個單純的邏輯運算子,沒有任何其他含義。

18樓:靠名真tm難起

&和&&都是邏輯運算子,都是判斷兩邊同時真則為真,否則為假;但是&&當第一個條件不成之後,後面的條件都不執行了,而&則還是繼續執行,直到整個條件語句執行完為止。

如&&例子中的i++>5被執行了,而i++<9並沒有被執行,這就是他們的差別。&例子中的i++>5和i++<9都被執行了。

19樓:第九暗騎士

「&&」(邏輯與)是邏輯運算子。 「邏輯與」相當於生活中說的「並且」,就是兩個條件都同時成立的情況下「邏輯與」的運算結果才為「真」。

「&」是位運算子。

與運算(&)

雙目運算。二個位都置位(等於1)時,結果等於1,其它的結果都等於0。

1 & 1 == 1

1 & 0 == 0

0 & 1 == 0

0 & 0 == 0

與運算的一個用途是檢查指定位是否置位(等於1)。例如一個byte裡有標識位,要檢查第4位是否置位,**如下:

byte b = 50;

if ( b & 0x10 )

cout < < "bit four is set " < < endl;

else

cout < < "bit four is clear " < < endl;

上述**可表示為:

00110010 - b

& 00010000 - & 0x10

----------------------------

00010000 - result

可以看到第4位是置位了

20樓:匿名使用者

這兩個運算子都是二進位制的按位操作符。

&: 二進位制「與」,如 1010 & 1011 = 1010,1010 & 1000 = 1000。都為1時,結果是1,否則是0

|: 二進位制「或」,如 1010 | 1011 = 1011,1010 | 1000 = 1010。有1時,結果是1,都是0時,結果為0。

c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。

儘管c語言提供了許多低階處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的c語言程式可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(微控制器或稱mcu)以及超級電腦等作業平臺。

21樓:匿名使用者

區別在於

a&b按位與& 總會計算兩個表示式的值

a&&b

而邏輯與&&,如果第一個表示式為假,後面一個表示式就不會計算了;

22樓:

&一般用作地址符號,如定義陣列a,&a就是指向陣列的第一個數的地址,&&是邏輯與的意思

c語言中「&」與「*」有什麼區別?

23樓:巫馬誠從胭

《和"?

你說運算子中的區別還是引用標頭檔案的區別?

如果是在標頭檔案引用中,區別就是例如:

#include

"stdio.h"

這種方式會先在當前目錄下尋找指定檔案,然後再去環境變數指定的目錄中尋找

#include

這種方式則不會在當前目錄中尋找檔案。

如果是運算子,《表示小於,屬於二元運算子

"表示字串,c語言要求字串必須用兩個雙引號包起來,比如char

*ch=

"123\0";

24樓:范姜佑平卿賦

首先,二者都是用於c語言中的註釋用。一般而言,「//」是用於單行或者少數幾行的註釋

「/**/」註釋的區域比較大,在這個符號包括的範圍類都是被註釋的物件。要說區別的話,也就是註釋的範圍(區域)大小不同。不知道滿意這答案否?希望對你的問題的解答有所幫助

c語言中a 》s s的區別,C語言中a s i 與a i s的區別

a s i 是a地址上的結構體成抄 員變數s的第i個元素。寫成非指標的方式,就是a 0 s i 這種寫法,要求a和s都必須是指標型別。a i s是a地址上,第i個a中的成員變數s。這種寫法,要求a必須是指標,而s不一定是指標。對比a 0 s i 和a i s,可以看出,這兩個是完全不同的意義。a是結...

C語言中,char ahappy與char ahappy 與char ahappy

1,表示定義一 個含有五個元素的 果回a strlen a 5 與 答c區別不大 自己理解吧 c語言char a h a a a 得什麼 答案是h 其實就是大小寫轉化 也可以這麼看 h對應的ascii碼十進位制為72 a為65 a為97a a a 也就是 h a a 72 65 97 104 h對應...

c語言中,temp是什麼函式,C語言中,temp是什麼函式

在c語言中,temp沒有特別的含義,既不是關鍵字也不是庫函式。可能是程式設計人員自版定義的權一個變數或函式,通常用來表示一個臨時變數,來自 臨時 的英文單詞temporary。舉例如下 int temp 定義一個int型別的變數,變數名為temp double temp 定義一個double型別的變...