c中aaa1是什麼意思

2021-03-03 21:50:05 字數 6193 閱讀 6175

1樓:熱詞課代表

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

2樓:金牛白小呆

&是位與的意思,將a和a-1都換成二進位制,然後按位進行與運算,1&0=0,0&0=0,1&1=1

c語言中a&(a-1)=?,這句話是什麼意思,想幹什麼,在哪能用

3樓:丨紅姬丨

這個是刪除一個bit,每次a&(a-1)的結果會比a的二進位制少一個bit,用個迴圈操作就可以算出有a多少個bit了

4樓:右灸

正解:這是檢測a是否是2的n次冪,即a如果是2、4、8、16、32、64、128、256、512、2048、4096... 計算的結果就是0,否則就是非0

5樓:

a和a-1兩個值進行按位與運算。如a=10,則

6樓:無心人隨緣

計算一個數的二進位制中1的個數:

while(a)

c++中,a+=b什麼意思?

7樓:幻翼高達

c++中,a+=b的意思是a+b後再賦值給a,即效果等同於a=a+b,但是從運算角度只算1次運算,「+=」是c++中一個複合運算子。

在賦值運算子當中,還有一類c/c++獨有的複合賦值運算子。它們實際上是一種縮寫形式,使得對變數的改變更為簡潔。

例如total=total+3,它的意思是本身的值加3,然後在賦值給本身。為了簡化,上面的**也可以寫成:total+=3。

a=a+1與a+=1是有區別的,對於a=a+1,表示式a被計算了兩次,對於複合運算子a+=1,表示式a僅計算了一次。

擴充套件資料:

c++中所有複合運算子:

1、+=:加法賦值

2、-=:減法賦值

3、*=:乘法賦值

4、/=:除法賦值

5、%=:模運算賦值

6、<<=:左移賦值

7、>>=:右移賦值

8、&=:位邏輯與賦值

9、|=:位邏輯或賦值

10、^=:位邏輯異或賦值

8樓:匿名使用者

c++中,a+=b的意思是a=a+b,即將a的值加上b的值之後的結果重新賦值給a,這是a=a+b的簡寫形式。

這種形式還有很多種運算型別,如-=、*=、/=、%=等,其規則與+=類似,如a-=b的後即為a=a-b,其他類似。

9樓:匿名使用者

a[b=c]++

首先執行賦值語句b=c,表示式b=c的值是c的值 ,所以a[c]++,a[c]的值自增1,一句話裡執行了上述兩個操作

10樓:

a+++-b = (a++)+(-b),這題目考察了對於運算子號優先順序的知識,++是自增運算子,優先順序高於+和-,所以前兩個+表示一個自增運算,+-從左向右 運算,所以第一個+是運算子,第二個-表示負數,相反-+,第一個-表示減法,第二個+號表示一個正數。

11樓:匿名使用者

a&=b等價於a=a&b,意思是a、b的二進位制碼進行每一位的與運算,結果存放在a裡面。

a^=b等價於a=a^b,意思是a、b的二進位制碼進行第一位的異或運算,結果存放在a裡面。

12樓:

是表示式a = a + b ;的簡寫形式,類似 a *= b 就是 a = a * b;

13樓:我的

表示式的右邊是呼叫函式f,括號內的a,b,c是傳遞到函式中去的引數(實參),將呼叫f所返回的值賦給c(使用者定義的變數),c的型別必須與函式返回值的型別一致

14樓:偷心的賊

應該是這樣的,「c」是某種變數,發f(a,b,c)是一個返回「c」類變數的函式,其中a,b,c分別是函式的引數

15樓:匿名使用者

等同於a=a+b

就是將原來a的值與b相加,然後將結果賦予a

16樓:匿名使用者

把 a+b 的值賦給 a

17樓:匿名使用者

a=a+b;

其他運算子同理

a&(-a)在c++裡面是什麼意思?有那些應用?

18樓:匿名使用者

對於是用補bai碼的環境,a和-a相與du可以獲得a最低zhi的非0位。

-a就是a取反加dao1

比如a的二進位制是內 ??????10000,取容反就是??????01111,加1就是??????

10000。前面?的部分是和原來a相反的,相與必然都是0,所以最後整體相與的結果就是00000010000。

19樓:匿名使用者

先負運算再進行與運算,應用同加減乘除

c語言中,&a+1和&(a+1)的區別是什麼

20樓:匿名使用者

語句中,b = *a+1 -- 指標a 指向的數值加1,*a 是數值, b 等於 那個數值 加 1。

或 把a看成陣列元素 b = a[0] + 1;

*(a+1) -- 指標 (a+1) 指向的數值b = *(a+1) -- 可以看成陣列元素 b = a[1];

21樓:匿名使用者

a是指標?是的話,&(a+1)就是a指標指向的地方+1(型別)的位置;若是指向的是陣列的話,&a+1就是增加整一個陣列的地址了。比如int b[8],*a=b,&a+1就是增加4*8=32個位元組了。

22樓:聽不清啊

c語言中,

"a"佔2個位元組,一個'a'和一個'\0'(字串結束符),它是一個字串。

'a'就只佔一個位元組,即單個字元'a',它是一個字元。

23樓:匿名使用者

c語言為了使寫法更方便,單條語句更簡短,增加了縮寫形式。

這兩種方式是一樣的,沒有任何區別。

除此之外,還有a *= 1,a %= 1,只要是操作符都可以。

24樓:我是你0爸

呃,,,樓上的各位都沒有答到本質上 從本質上講,「a」是一個指標常量,而'a'則是一個數值。也就是說,在編譯器看來,「a」的值是一個地址(比如:0x84f39ea0),而'a'的值則是a的ascii碼(即97)。

樓主用printf列印這兩個值看看就知道了 另外,當「」裡的字串有多個字元時,它指向字串的第一個字元。

25樓:匿名使用者

&a+1是a的地址加上1,&(a+1)是(a+1)的地址

&是地址運算子和引用運算子

26樓:匿名使用者

注意,後者是非法的。

27樓:匿名使用者

int b[2];

int *a;

a=b; //a指向陣列b首地址,暨b[0]的地址*a + 1 // *a就是取a指向地址的值,暨b[0],所以*a+1 == b[0]+1

*(a+1) // a+1,指標+1,就是指標指向下一個地址,暨b[1]的地址,所以*(a+1)== b[1]

28樓:燕清揚

例如a=2;

a++;輸出結果為2;但是記憶體中它的值自加1了。(先輸出a再運算)例如a=2;

++a;輸出結果為3;記憶體中也是3.(先運算a再輸出值)。

例如a=2;

a+=1;意思等同於a=a+1;

29樓:匿名使用者

取a的地址加1

取a+1的地址

30樓:匿名使用者

a++:a先建立自身的一個副本,然後a自增1,最後返回副本的值a+=1: 事實上相當於++a

a=a+1: 雖然有點雷同於a+=1,但不同的是此時右值的a和1做相加操作,形成一個副本然後賦值給a,所以有額外操作

++a:將a自增1並返回a

鑑於a++和++a的差別,c++primer建議用++a作為for迴圈的遞增量。

以上討論不僅限於int,還著重於對類的過載設計時的考慮。

31樓:認不倒你

&a+1 :a的下一個位置的指標

&(a+1): 錯誤

32樓:

事實上是一樣的

a>>=1的意思就是a>>1並賦值給a;

可能執行的效率會有錯

33樓:曉呈呈

a++ 先取值再自加

++a 先自加再取值

a+=1 等同 a=a+1

34樓:匿名使用者

這裡的a=&a[0][0];

a+1=&a[1][0],也就是過了一個a[0][1],因此是加了8個位元組

&a+1是跳過整個陣列的地址,也就是加了16位元組

35樓:匿名使用者

a是相當於a[0][n]

a+1是a[1][n]

n是幾就差n*4個位元組嘍

a就是陣列首地址地址

c++中(++a)和(a++)有什麼區別?

36樓:匿名使用者

你可以這樣來想:++a和a++,都是個表示式,最後的結果就取決於是先加,還是後加,如果是先加,那麼最後的表示式的結果就是a的值加1,如果是後加的話,則表示式的值就是原來a的值;而無論是先加,還是後加,a的值計算後一定會加1。

比如:如果a=1,b=a++,運算完b=1,a=2

如果a=1,b=++a,運算完b=2,a=2

當然也可以這麼理解:

a++就是a=a+1,其含義就是現將後面的a賦值給前面的a然後再加1.

++a就是a=1+a,其含義就是先對後面的a加1然後再賦值給前面的1.

但這只是在表示式中.

如果在單獨的語句中二者都沒有什麼區別!

列:int a=1,b=1;

a++;++b;//這裡就是語句!

printf("%d%d",a,b);

輸出都是2.

而表示式則是if((a++)==1)和if((++a)==1)這裡就有區別了!

呵呵,謝謝.

37樓:邱全於駿英

一般來說他們的區別在於混合表示式中運算子的處理順序。

a++是先處理其他運算,然後a再自加;

而++a則是先處理a自加運算,再處理其他表示式運算;

如果只是單純的表示式a++;或者是++a;這兩個表示式的結果就沒什麼區別。

譬如是#include

using

namespace

std;

void

main()

計算的結果是a=2,b=1,c=2

c=++a是表示式先處理自加運算後處理賦值運算;

b=a++是表示式先處理賦值運算後處理自加運算;

38樓:開萱由琬

對於a這一變數本身而言,效果等同為自增1,比如a++;和++a;是等價的。但要是說如下語句:

inta=1;

printf("&d",++a);和printf("&d",a++);的結果不同,前者為2,後者為1;

即++a是先自增後使用,a++是先使用後自增。

還希望能讓您滿意

39樓:匿名使用者

an和a的區別,用法區別

40樓:匿名使用者

例如n,在執行++a時,先變成n+1,然後再執行程式,執行完一邊程式後變成n+2再執行,依次迴圈。

n在執行a++時,先執行一遍程式,然後變成n+1再執行,依次迴圈。

也就是說++a表示先增加,然後執行;a++表示先執行後再增加。

這樣說也不知道你是否能懂,呵呵。

41樓:瑪利亞燕

(++a)是先加後用

(a++)是先用後加

例如:a=2,b=a++:則b=2,a=3;

a=2,b=++a ,則b=a=3

42樓:七個字是最長的

+在前就是先讓a=a+1,然後使用a的值

+在後就是先使用a的值,然後讓a=a+1

簡單好記

c中的是什麼意思,C中是什麼意思

主要有兩個用法 一個是輸出運算子 如cout 5 另一個是移位運算子,n 就相當於c語言中的 左移,相當於乘以1 3,變成8 include using namespace std int main int a cin a 輸入一個數 cout c 中 是什麼意思 如果是cin a 表示輸入值到變數...

在c中是什麼意思,c是什麼意思

和 用法差不多 a b,a a b 是按位或並賦值的意思。若有兩個整型變數a和b,那麼a b 就是a a b 的意思。一 釋義 是不等於號的意思。如 if c 2 判斷 c 不等於 2 二 c 的簡單介紹 c 是在c語言的基礎上開發的一種通用程式語言,應用廣泛。c 支援多種程式設計正規化 物件導向程...

C中textBox1Text2是什麼意思

還有別的格式可以寫,如 textbox1.text textbox1.text 2 他們是等價的 他的意思就是把textbox1.text本身的內容,後面接上字元 2 也就是 2 之後,再這個資料再存回到textbox1.text裡去 實際上它是 textbox1.text textbox1.tex...