c語言中關於和的意思理解,C語言中 和 是什麼意思

時間 2021-12-18 21:57:14

1樓:

*代表指標運算子和乘法運算子;&代表取位址,與運算子,引用符。

用於二目運算中的按位(位運算)與運算:

單目是只需要乙個運算元的意思,比如:a++ a--   *a  &a

雙目是需要兩個運算元的意思,比如:a+b  a-b a*b  a/b  a%b

三目是需要三個運算元的意思,比如:a=c>b?c:b;

例如:9&5可寫算式如下: 00001001 (9的二進位制補碼)&00000101 (5的二進位制補碼) 00000001 (1的二進位制補碼)可見9&5=1。

按位與運算通常用來對某些位清0或保留某些位。例如把a 的高八位清 0 , 保留低八位, 可作 a&255 運算 ( 255 的二進位制數為0000000011111111)。

擴充套件資料

運算子的使用

floatx,*ptr;

ptr=&x;//合法:使得指標ptr指向x

ptr=&(x+1);//錯誤:(x+1)不是乙個左值

2、當已具有乙個指標,並且希望獲取它所引用的物件時,使用間接運算子*(indirectionoperator),有時候這會被稱為解引用運算子(dereferencingoperator)。它的運算元必須是指標型別。如果ptr是指標,那麼*ptr就是ptr所指向的物件或函式。

如果ptr是乙個物件指標,那麼*ptr就是乙個左值,可以把它(即*ptr)當作賦值運算子左邊的運算元:

floatx,*ptr=&x;

*ptr=1.7;//將1.7賦值給變數x

++(*ptr);//並將變數x的值加1

2樓:匿名使用者

別想什麼 *p=&a 了,把這種寫法當成不存在就好了

3樓:水上漂湯

用做修飾符時,*表示指標,&表示別名

int *p; // p是乙個指標

int &a = b; //a是b的別名(必須初始化)而用作運算子時,*表示取值,&表示取位址

int a = 1;

int *p = &a; //取a的位址並初始化指標p*p = 2; //修改p指向的值為2(a變成了2)最後說一下你所謂的*p = &a;

這個語句表示取a的位址並賦值給p指向的內容。這條語句正確執行的前提是,p指向的內容是乙個指標,也就是說p是二級指標。

4樓:廿四點半

*p=&a那麼就是*p是a的值,p還是a的位址答:孩子,這個是錯誤的。int *p = &a; 是這樣定義的。或者int *p; p = &a;

p是乙個指向int型別的指標變數,裡面裝著神馬隨你喜歡,反正要是int的(因為他是按int的位元組長度取資料的)。p = a;這個是神馬來的?最基礎的概念啦,p是指標型別的(指向int),a 是乙個普普通通的int型別,能賦值嗎?

指標這個沒啥難度的,無非就是乙個變數指來指去。是你初學不了解而已,不懂的追問吧

c語言中+=和-=是什麼意思

5樓:梅竹青洪橋

可以提高程式的效率;

編譯器在語法翻譯的時候最終會用逆波蘭式來表示(其他的也可以的)也就是翻譯成x+=a的形式。

所以我們書寫的時候把x=x+a

寫成x+=a說一下原理:

x+=a等價於

x=x+a。

大三的時候編譯原理有講的。

祝你好運

6樓:仝全雪錦

=是賦值運算子。

i=2,是指把「2」這個值賦給i,這樣i就有了值,為2。

==是比較運算子,即「等於」。

if(i==2)

printf(「%d」,i)

是指:如果i等於2,就列印出i來,即列印出2

7樓:尾桂花函癸

/=是復合賦值運算子,num/=10:相當於num=num/10凡是二元(二目)運算子,都可以與賦值符一起組合成復合賦值符。c語言規定可以使用10種復合賦值運算子。即:

+=,-=,*=,/=,%=,<<=,>>=,&=,^=,|=c採用這種復合運算子,一是為了簡化程式,使程式精練,二是為了提高編譯效率(這樣寫法與「逆波蘭」式一致,有利於編譯,能產生質量較高的目標**)。

8樓:耿翠花老裳

「==」就是把等於的意思而「=」是賦值運算子例如;a==b,就是a等於b

而a=b,則是把b賦值給a

++i--i

(在使用之前使i的值加(減1)

例如i的原值

i=3則j=++i

(i的值先加1變成4,在賦值給j,j的值現在是4)而i++i--

例如j=i++

則先是將i的值3賦給j,j的值變成3,而i的值變成4)

9樓:逢淑英毛戊

==,判斷兩個值是否相等

例:if(i==0),即判斷i是否為0

++,相當於加1,例i++,相當於i=i+1--,相當於減1,例i--,相當於i=i-1!=,判斷兩個值是否不相等

,例if(i!=5),判斷i是否不等於5

10樓:貝蘭希戊

=是賦值運算子

相當於傾倒

a=5,a=p及a=c*d都是它的應用

相當與分別把5,p,c*d倒到a的記憶體裡

賦值運算子左邊必須是變數而右邊可以是變數,常量或者是表示式==是關係運算子

優先順序比=運算子高

相當於判斷左右是否相等

相等值為1

,否則值為0

如:#include

void

main()

11樓:皇甫翠花項午

你上面都是2個\\,

在字串裡面"\\"代表輸出

\,所以上面輸出abc\ndef和abc

\ndef,

也許\n是換行的意思,但是因為\\的存在,所以優先\\結合,如果沒有\\,那麼就是換行了,你可以嘗試下乙個\

12樓:暢季暴天

?:連起來的意思

我舉個例子吧

inta

=3;int

b=2;

intc;

if(a>b)?(c=a):(c=b);//意思是如果a>b就執行c=a,否則就執行c=b

類似於下面的語句

if(a>b)

else

條件運算子是?:

表示式為:表示式1?表示式2:表示式3

表示式2是條件成立(邏輯值為1)時整個表示式的取值

表示式3是條件不成立(邏輯值為0)時整個表示式的值

例如:m=10

&&b-->20?a

:bx=3+a>5

?100

:200

優先順序條件運算子優先順序高於賦值、逗號運算子,低於其他運算子

例如:⑴

m=10

&&b-->20?a

:b等價於:(a++>=10

&&b-->20)?a

:b⑶x=3+a>5

?100

:200

等價於:x=

((3+a>5)?

100:

200)

結合性條件運算子具有右結合性

當乙個表示式中出現多個條件運算子時,應該將位於最右邊的問號與離它最近的冒號配對,並按這一原則正確區分各條件運算子的運算物件。

例如:w

?x+w

:x

:y與w

?x+w:(

x

:y)等價與

(w

?x+w

:x

:y不等價----歡迎加入------c++部落------------hello

word!--------

無論你是初學者還是專家,只要你熱愛程式設計、交流、分享,c++部落因為你而精彩~

13樓:理睿彤緒立

等號運算子,等同於數學裡的=號。

例如:a==b;就是說a的值和b一樣。

14樓:令若谷陽嫣

==是比較運算子裡的一種,判斷前後2個值是否相等,通常用於if等條件判斷下,這個時候不能用=

比如if

(x==y)

15樓:風清安有綢

==是關係運算子,當且僅當兩邊的值一樣時,式子的值為true;

++是自加運算子,指將變數的值加一后再賦回給變數。有運算順序有前置和後置之分,詳情看參考資料;

--是自減運算子,指將變數的值減一後再賦回給變數。也有運算順序前置和後置之分,詳情看參考資料;

!=是關係運算子,當且僅當兩邊的值不一樣時,式子的值為false。

16樓:速月華沐志

嗯。輸入兩個\,但在輸出的時候只會有乙個\。第乙個\和\n的\的意義是一樣的。第二個\才是輸出的\

17樓:遇闌況仙

因為初始化時a[0]=1,其餘等於0

第乙個迴圈完成後,a[1]=2,a[3]=6;其餘未變所以結果是:

a[0]=1;

a[1]=2;

a[2]=0;

a[3]=6;

a[4]=0;

18樓:桐傅香操妍

乙個等於,乙個賦值

a==4;

//說明a的記憶體位址理存的是4

a=4;

//說明a裡本來存的不一定是4,現在給他賦了乙個值,那麼他的記憶體裡一定是4

真繞口,不知道你明白了。

19樓:水晶葡萄

+=:加法賦值運算子,將運算子前面的變數加上後面的值再賦值給前面的變數。

-=:減法賦值運算子,將運算子前面的變數減去後面的值再賦值給前面的變數。

比如:a+=b;     //等價於a=a+ba-=b;    //等價於a=a-b

20樓:逮起雲阮水

=是賦值

==是比較

if(a==1)

then

printf

("%d",a);

如果a等於1就輸也a

if(a=1)

then

printf

("%d",a);

不官a是什麼,都輸也a

21樓:伍婕池詠

是關係運算子.

表示:判斷是否相等的。

如:if(a==b)

/*判斷a與b是否相等,如相等則為真*/

22樓:胥素蘭繩儀

==等於的意思

=是賦值的意思。

只要理解到

「賦值不是等於」,就能分辨了。

比如 inta;

a=2;//

賦值,讓a的值變成2(a原來是多少是不知道的)if(a==3)//

判斷a是否等於3,

此時a的值仍然是2

a++;

23樓:乘心宜於初

就是等於的意思,c語言裡,判斷某個變數是否與給定的值相等,就要用==,而=符號則用來給某變數賦值

24樓:合燁磊馮漾

==是判斷是否相等的字元,如果左右兩邊相等,則表示式的值為1,否則則為0.

25樓:公羊冰冰勾氣

1.模運算,即求餘數。表示式a%

b就是計算a除以

b得出的餘數。例如:4%

3的結果是

12.轉義符,比如在scanf()和

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

26樓:匿名使用者

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

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

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

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

p+=2 代表p=p+2

所以應該是1504。

27樓:唐泇三勺

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

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

c語言中*與&各代表什麼意思

28樓:匿名使用者

你好很高興為你解答

答案是:前面乙個是指標運算,後面乙個是取位址。*後面必須是指標變數,&後面則什麼變數都可以(除了常數)

滿意請採納,謝謝

29樓:匿名使用者

* 代表指標運算子和乘法運算子。

&代表取位址,與運算子,引用符,

30樓:顧_城丶

*代表乘法運算或者引用指標 &代表與 &&就是 和 的意思

關於c語言中scanf的問題,關於C語言中scanf的問題

scanf後面的 f格式,必須與輸入格式相一致 按您的輸入,中間用逗號,與scanf中 f之間格式不符,結果只接收了第1個變數,後面沒接收,因而是零 有的編譯器會是隨機數 正確寫法 1 如果 scanf中 f之間用空格,即 scanf f f f a,b,c 應該輸入1 2 3 中間有空格 2 如果...

c語言中rta各什麼意思,c語言中 t r n 和空格都是什麼意思啊?

r 回車 cr t 水平製表 ht a 響鈴 bel 所有的ascii碼都可以用 加數字 一般是8進製數字 來表示。而c中定義了一些字母前加 來表示常見的那些不能顯示的ascii字元,如 0,t,n等,就稱為轉義字元,因為後面的字元,都不是它本來的ascii字元意思了。所有轉義字元及意義 r意思是回...

關於c語言中指標變數的問題,關於C語言中指標變數的問題

int a 15,b 99,c 22,d 45 a 15,b 99,c 22,d 45 int p a 變數p指向變數a,p指向的單元的內容 p 是15 int q b 變數q指向變數b,q指向的單元的內容 q 是99 p c 給p指向的單元賦值,而不是給p賦值,由於p指向變數a的單元,則相當於給a...

C語言中if語句的巢狀怎理解,C語言中三個if語句的巢狀怎理解

if語句相關 if語句的括號內可以加任意語句,但是不能有分隔符。可以用 來進行邏輯語句的判斷 若是包含結構,則關係如下 if a 則意思為如果滿足a,則對b進行判斷。如果滿足b,則對c進行判斷。如果滿足c,則執行語句d c語言對巢狀if語句的規定是 else總是與 配對 答案是d,其前面最近的尚未配...

C語言中關於自加自減的問題,c語言中關於自加和自減的問題

在前,就是先自加後取值 在後,就是先取值後自加。看下面問題更清楚。問題1 迴圈第1次 判斷條件z 0,即先判斷3 0,然後z 1變成2判斷條件 x 5,即先x 1變成1,然後判斷1 5條件成立,執行迴圈體後,x 1,y 4,z 2迴圈第2次 判斷條件z 0,即先判斷2 0,然後z 1變成1判斷條件 ...