1樓:四舍**入
>>=:這是複合運算子
「>>」是雙目移位運算子,其功能是把「>> 」左邊的運算數的各二進位全部右移若干位,「>>」右邊的數指定移動的位數。
例如:設 a=15(這是十進位制,要把它轉換為2進位制數),a>>2表示把000001111右移為00000011(十進位制3)。
2樓:餘啊水中游啊遊
>>=:這是複合運算子
右移運算右移運算子
「>>」是雙目運算子。其功能是把「>> 」左邊的運算數的各二進位全部右移若干位,「>>」右邊的數指定移動的位數。例如:
設 a=15(這是十進位制,要把它轉換為2進位制數),a>>2 表示把000001111右移為00000011(十進位制3)。應該說明的是,對於有符號數,在右移時,符號位將隨同移動。當為正數時,最高位補0,而為負數時,符號位為1,最高位是補0或是補1 取決於編譯系統的規定。
例如:#include "stdio.h"
void main()
//結果為:x=0x88888888
//然而
#include "stdio.h"
void main()
//以下結果為:x=0x44444444
先把x向右移一位再賦值給x,所以x的值有變化,第一種情況沒有變化
3樓:粘潔茹凰
"!"是取非得意思。
兩個基本概念
1、在c語言中一般認為「0」是假,其他不是「0」的都是真。
2、if()裡面為真,則進入if下的大括弧{},為假,就跳過。
以此題為例:
若x是「0」(為假)。則「!x」就不是零(為真)。則裡面為真,進入if下的大{}。
若x不是「0」(為真)。則「!x」就是零(為假)。則裡面為假,跳過if下的大{}。
4樓:聽不清啊
c語言程式中x>>=1,如果作用於整數x,就是把x右移一位,把x的二進位制值的最後一位丟棄,最高位補0。
實際就是把x的值除以2。在運算結果上等價於x=x/2。
5樓:安徽新華電腦
>>是右移運算子,就是將n的二進位制表示向右移位。你這裡的n>>=1表示將n的二進位制表示向右移動一位再賦值給n.這裡的》=與+=,-=,*=的用法是一樣的,先做運算再賦值
6樓:匿名使用者
x>>=1:是將x 以二進位制形式表示,讓各位向右移動1 位,左補0(邏輯右移1 位,相當於除 2 處理), 然後將結果仍存入x 中。
注:你的c 編譯系統若預設為是算術位移,則是各位向右移動1 位,左補1. 用時要考查一下噢。
7樓:nohow絕不
這是移位運算的意思。
是位操作運算的一種。移位運算子有雙目移位運算子:<<(左移)和》(右移)。
移位運算子組成的表示式也屬於算術表示式,其值為算術值。左移運算是將一個二進位制位的運算元按指定移動的位數向左移位,移出位被丟棄,右邊的空位一律補0。右移運算是將一個二進位制位的運算元按指定移動的位數向右移動,移出位被丟棄,左邊移出的空位或者一律補0,或者補符號位,這由不同的機器而定。
在使用補碼作為機器數的機器中,正數的符號位為0,負數的符號位為1。
8樓:匿名使用者
表示x=x>>1,右移一位,關於怎麼移,可參考樓上的解釋
c語言裡x-=1是什麼意思?
9樓:匿名使用者
c語言中的任何一個雙目運算子(就是和2個數做運算的運算子,比如一些數**算符,邏輯運算子,關係運算子,位運算子)都可以和賦值運算子在一起組成「複合的賦值運算子」。
具體運算規則如下:
x - = 1 左邊保留變數x,然後把賦值左邊的變數和運算子都挪到右邊,變成x=x-1即可。
若有c*=a-b,相當於c=c*(a-b)。注意括號。
10樓:匿名使用者
c語言裡的賦值運算子有 = -= += *= /= .
int a=5; //把5賦給變數a
int b=10;
b +=5; //把【b當前值】加【5】後【再賦給】變數b ,即b = 10 + 5;
其他的-= += *= /= 類似!
11樓:匿名使用者
int x = 8;
x -= 1;(複合賦值運算子)
那麼x = 7;等同於:x = x - 1;
但x-=1只計算x一次,而x=x-1計算x兩次,其它的像x *= 4即x = x * 4,所以x=32另x &= 4即x = x&4
12樓:匿名使用者
x-=1的意思就是x=x-1;
如:y+=3 就是y=y+3
-= += *= /= 都一樣
這是c語言裡面的複合運算子
13樓:匿名使用者
-=是一個賦值運算子,x-=1的意思是x=x-1,
類似的還有+=,*=,/=,《=,》=,—=……=,|=
這些賦值運算子的用法都是一樣的,如x-=1的意思是x=x-1
14樓:匿名使用者
x-=1意思就是x=x-1.
例如:x本來為5,那麼經過x-=1後,x就等於5-1,即等於4.
15樓:mvp睫毛在跳舞
相當於:x=x減1,就是左邊的移到右邊,是種簡寫!
16樓:匿名使用者
x = x-1;
雙目運算都可以這麼寫
17樓:匿名使用者
x-=1 就是 x=x-1
c語言中x<<1什麼意思
18樓:匿名使用者
對於x中儲存的整數左移1位(相當於乘以2),然後按照8進位制輸出。
19樓:匿名使用者
<<:左移運算,與抄
其對用的襲有》(右移)
實現過程是把該變bai量先變成
du2進位制數,zhi然後進行移位,在用0補齊。
dao例:unsigned char x;
x=127;//(二進位制:0111 1111)//x<<1後的結果:1111 1110 <=> 254printf(''%o",x<<1); //按8進位制輸出376說明事項1:
移位運算都是2的整數倍,*2 和<<1的運算結果是一樣的,但是移位的執行效率要高
2:有符號數不要輕易使用移位,符號位比較容易出問題。
20樓:手機使用者
關係運算子…書上有吧
c語言,,!x與x!分別表示什麼意思
21樓:四舍**入
c語言中只有!x沒有x!,!x的意
思就是x!=0。
!x的意思就是x!=0;當版x=0時執行while迴圈;權!即取反,當x!=0時不執行;若x=0,則!x非零;
若x不等於零,則!x=0;一般用if(!x)來做判斷式。
22樓:偷個貓
c語言,
!x 是 對x 的「邏輯非」運算。
當 x 不等於0 時,x 為真,!x 就為 假。
當 x 等於0 時,x 為假,!x 就為 真。
c語言裡 沒有內 x! , 可以 有類似 x!=0 形式。 != 是 「不等於」。
23樓:匿名使用者
c語言中只有!
baix沒有x!,!x的意du思就zhi
是x!=0。
!x的意思就是x!=0;當x=0時執dao行while迴圈回;
!即取反答,當x!=0時不執行;若x=0,則!x非零;
若x不等於零,則!x=0;一般用if(!x)來做判斷式。
擴充套件資料
c語言賦值運算
1、賦值運算子:a=5;
a=b=0;
第一個賦值語句把5賦給變數a;第二個賦值語句的意思是把0同時賦值給兩個變數。這是因為賦值語句是從右向左運算的,也就是說從右端開始計算,先b=0,然後a=b。
2、複合賦值運算子:a=1;a+=3;
上面第二個賦值語句等價於a=a+3;即a=4。
3、算術運算子:area=height*width;num=num1+num2/num3-num4;
第一個賦值語句height和width相乘結果賦給變數area;第二個賦值語句先完成num2與num3的整除運算,然後與num1相加,再減去num4,結果賦給num。運算子運算順序先算乘除再算加減。單目正和單目負最先運算。
24樓:折木靜風
x!為的階乘,如3!=3*2*1
!x意思是「非x」非運算子'!'是c語言邏輯運算子,若x=0,則!x非零若x不等於零,則!x=0一般用if(!x)來做判斷式
25樓:匿名使用者
只有!x沒得x!,!x是對x做非運算,如果x為真,!x則為假,反之成立
c語言中x!是什麼意思
26樓:凌誠出溪
非x即not
x也就是說,表示x的相反的一面
如果if(x)成立,那麼if(!x)就不成立。反之亦然。
如果x不是零,那!x就變成零,如果x是零,那麼!x就變成1
27樓:金色潛鳥
"x!" -- 字串 內容是 x!
// x! -- 註解行
/* x! */ -- 註解行
條件:if ( x!= 0) printf("x not equ zero \n"); else printf("x == zero \n");
如果 x 不等於 0 則列印 x not equ zero, 否則 列印 x == zero
!= 組合在一起是邏輯運算子「不等於」
!x -- 這個表示 對 x 作 「非」運算。
28樓:象冬亦粟疇
c/c++中只有[
!x],在需要bool
型結果的地方,用以表示對
x的bool值取反,對於類型別,沒用定義bool轉換的不能使用!x,否則報錯。
29樓:琴儉嘉緞
!x意思是「非x」
非運算子'!'是c語言邏輯運算子,若x=0,則!x非零若x不等於零,則!x=0
一般用if(!x)來做判斷式
30樓:巨淑英裔婉
你說的是不是if語句中的if(!x)
這個意思就是,當x為0的時候,怎麼樣怎麼樣。
如果是if(x)的話意思就是,當x為1的時候,怎麼樣怎麼樣。
望採納,謝謝!
31樓:溥冉愈德運
這個是c語言中唯一的三目運算子。
string1?a:
b意思是說:當string語句判斷是真的時候,該語句使用結果a,否則是用結果b。
32樓:惠基柔子瑜
非a的意思,如果a為真,那麼!a就為假,反之一樣。
33樓:尉典羽天睿
while(x)意思是說x非零情況下繼續執行,那while(!x)就是說x是0的情況下繼續執行,--x是說在用x參與運算前做x=x-1的操作。把上面的組合一下就是while(!
(--x)),懂了嗎?
34樓:百度使用者
c語言中沒有!在變數之後的寫法
!在c語言中表示取反的意思,用法要加在變數之前,比如x=1,!x就為0
35樓:濮筠京大
在c語言中,~x代表的意思是按位取反的意思。
使用~進行按位取反時,將某個數x的二進位制的每一個bit取反即可得到~x的值。
如~0x37,即~(0011
0111),得到的答案應該為:
~0x37=~(0011
0111)=(1100
1000)=0xc8。
需要注意的是,在c語言中,還有一個邏輯取反符號「!」
「!x」的返回值只有0和1兩種。如果x為0,則!x=1如果x不等於0.則!x的返回值為0。
36樓:等晨光的孩子
c語言中 沒有x!的。。。!是否的意思。。。。x為非零 則!x 為真 x為零 則!x為假。。
37樓:匿名使用者
數學符號吧?
x的階乘
在c語言中1是什麼意思,c語言中1是什麼意思
在c語言中 1 的意思是 將1的二進位制名 向左移20位。左移一位專相當於對該數屬 乘2,左移n位就相當於乘n個2。把1,位左移20位 按二進位制來移動 在32位機中,十進位制的1就是 00000000 00000000 00000000 00000001,位左移20位就是 00000000 000...
c語言1u是什麼意思,c中的1ll是什麼意思?1u,1l,1UL呢?
1u表示的就是1 加上的u表示這個1是無符號整型數 你寫錯了。c語言語法中應該是 lu 小寫的字母 l 而不是數字 1。這兩個不仔細辨別非常相像。c 語言中 printf 語句中的 lu 表示按無符號 unsigned 長整數輸出一個整數值。是 lu吧?在printf中表示按無符號長整型輸出對應的變...
c語言中func是什麼意思,在C語言程式中,func 是什麼意思?
flag和func不是關鍵bai字,所以在不同的du上下文中會有不一樣的意zhi思,不過通常flag作為dao 標誌用版,func作為函式用.但他們不是關鍵字,所以反權過來用雖然有悖常理,卻不能算錯.default 是預設的意思,能常用在switch語句塊中表示不是前面的case 的情況.在c語言程...