『壹』 c語言是什麼
C語言是一門面向過程的計算機編程語言,是一種面向過程、抽象化的通用程序設計語言,能以簡易的方式編譯、處理低級存儲器,適合開發固件或攜帶型應用程序,是最廣泛使用的語言之一。
C語言具有高效、靈活、功能豐富、表達力強和較高的可移植性等特點,在程序設計中備受青睞。C語言編譯器普遍存在於各種不同的操作系統中,其設計也影響了Java、Python等編程語言。
是Dennis MacAlistair Ritchie於1972年首次提出,後經多位學者發展完善而形成。
1972年
『貳』 C語言中的%是個什麼意思啊 有什麼用啊
%是求模的意思,兩邊必須是整數類型的,求模常用符號為mod,就是我們小學學的求余運算符。
例如50%23=4,因為余數為4,所以在程序中必須保證兩邊為整數才是這個意思。
(2)c語言擴展閱讀
「模」是「Mod」的音譯,模運算多應用於程序編寫中。 Mod的含義為求余。模運算在數論和程序設計中都有著廣泛的應用,從奇偶數的判別到素數的判別,從模冪運算到最大公約數的求法,從孫子問題到凱撒密碼問題,無不充斥著模運算的身影。雖然很多數論教材上對模運算都有一定的介紹,但多數都是以純理論為主,對於模運算在程序設計中的應用涉及不多。
基本性質
(1)若p|(a-b),則a≡b (% p)。例如 11 ≡ 4 (% 7), 18 ≡ 4(% 7)
(2)(a % p)=(b % p)意味a≡b (% p)
(3)對稱性:a≡b (% p)等價於b≡a (% p)
(4)傳遞性:若a≡b (% p)且b≡c (% p) ,則a≡c (% p)
參考資料模運算_網路
『叄』 +=在C語言中什麼意思啊
+=的意思就是把左邊的第一個符號移到右邊,例如:「b+=c」,就是b = b+c的意思。
『肆』 c語言中「%=」是什麼意思
%是求模的意思,兩邊必須是整數類型的,求模常用符號為mod,就是小學學的求余運算符。
例如50%23=4,因為余數為4,所以在程序中必須保證兩邊為整數才是這個意思。
類似的還有 +=,-=,*=,/= 等。但是a%=b這種運算的效率,要高於a=a%b這種的效率,因為a%=b是直接在a上做求余運算,a=a%b則是先用一個臨時變數的來記錄好a的值,在進行運算,之後將運算結果再賦值給a,a=a%b要比直接a%=b多了兩次賦值運算,因而後者的效率更高。
例如:
a + b, c = b, c++
逗號運算符的優先順序是所有運算符中級別最低的,通常配合 for 循環使用。逗號表達式最右邊的子表達式的值即為逗號表達式的值。上例中,c++ 的值(c 自增之前的值)即為該表達式的值。
逗號運算符保證左邊的子表達式運算結束後才進行右邊的子表達式的運算。也就是說,逗號運算符是一個序列點,其左邊所有副作用都結束後,才對其右邊的子表達式進行運算。因此,上例中,c 得到 b 的值後,才進行自增運算。
以上內容參考:網路-C語言運算符
『伍』 C語言//////////////
第一:memset函數按位元組對內存塊進行初始化,所以不能用它將int數組初始化為0和-1之外的其他值(除非該值高位元組和低位元組相同)。
第二:memset(void *s, int ch,size_tn);中key實際范圍應該在0~~255,因為該函數只能取ch的後八位賦值給你所輸入的范圍的每個位元組,比如int a[5]賦值memset(a,-1,sizeof(int )*5)與memset(a,511,sizeof(int )*5) 所賦值的結果是一樣的都為-1;因為-1的二進制碼為(11111111 11111111 11111111 11111111)而511的二進制碼為(00000000 00000000 00000001 11111111)後八位都為(11111111),所以數組中每個位元組,如a[0]含四個位元組都被賦值為(11111111),其結果為a[0](11111111 11111111 11111111 11111111),及a[0]=-1,因此無論ch多大隻有後八位二進制有效,而八位二進制[2] 的范圍(0~255)YKQ改。而對字元數組操作時則取後八位賦值給字元數組,其八位值作為ASCII[3] 碼。
所以這個4位元組的100的後一個位元組是 0110 0100
把一個int 4個位元組的全初始化為0110 0100
那最後就是 0110 0100 0110 0100 0110 0100 0110 0100 4個位元組32比特 轉為十進制就是 1684300900
『陸』 C語言中->是什麼意思啊
「->」是一個整體,它是用於指向結構體子數據的指針,用來取子數據。
換種說法,如果我們在C語言中定義了一個結構體,然後申明一個指針指向這個結構體,那麼我們要用指針取出結構體中的數據,就要用到「->」。
問題中的p=p->next ,意思是將p指向的一個結構體實例中的自數據next賦值給p。
(6)c語言擴展閱讀:
在C語言中,結構體(struct)指的是一種數據結構,是C語言中聚合數據類型(aggregate data type)的一類。結構體可以被聲明為變數、指針或數組等,用以實現較復雜的數據結構。結構體同時也是一些元素的集合,這些元素稱為結構體的成員(member),且這些成員可以為不同的類型,成員一般用名字訪問。
定義與聲明:
結構體的定義如下所示,struct為結構體關鍵字,tag為結構體的標志,member-list為結構體成員列表,其必須列出其所有成員;variable-list為此結構體聲明的變數。
『柒』 在c語言中=!是什麼意思
1、c語言中=!是兩個運算符擺放在一起,「=」是賦值運算符,「!」邏輯非運算符;
2、邏輯操作符一般將其操作數視為條件表達式,返回結果為Bool類型;
3、首先對其操作數求值,若結果為0,則條件為假(false),否則為真(true);
4、優先順序上「!」先於「=」;所有比如有下面的式子,int i;i=!5;
5、這個理解為:根據運算符優先順序,!先於=;首先5作為!的操作數,求值!5的結果是bool型的false。
6、然後false隱士轉換成int型,即0;所以i裡面的值是整形0。
(7)c語言擴展閱讀:
C語言運算
1、C語言的運算非常靈活,功能十分豐富,運算種類遠多於其它程序設計語言。
2、在表達式方面較其它程序語言更為簡潔,如自加、自減、逗號運算和三目運算使表達式更為簡單;
3、但初學者往往會覺的這種表達式難讀,關鍵原因就是對運算符和運算順序理解不透不全
特有特點
1、C語言是一個有結構化程序設計、具有變數作用域(variable scope)以及遞歸功能的過程式語言。
2、C語言傳遞參數均是以值傳遞(pass by value),另外也可以傳遞指針(a pointer passed by value)。
3、不同的變數類型可以用結構體(struct)組合在一起。
4、只有32個保留字(reserved keywords),使變數、函數命名有更多彈性。
5、部份的變數類型可以轉換,例如整型和字元型變數。
6、通過指針(pointer),C語言可以容易的對存儲器進行低級控制。
7、預編譯處理(preprocessor)讓C語言的編譯更具有彈性。
『捌』 C語言-> ,--,++,>=,==,>>是什麼意思
舉例來說
p->a 相當於(*p).a
i-- 相當於i=i-1;(i--)的值為i,(--i)的值為i-1
i++ 相當於i=i+1;(i++)的值為i,(++i)的值為i+1
>= 相當於≥
a==b 若a b相等,則(a==b)的值為1,否則(a==b)的值為0 a b值不變。
*上面四個括弧中的i--,a==b,a=b都是表達式(不含擴號),C語言規定所有表達式都是有值的,但不一定每個表達式都改變變數的值。
另有= 如果a=b將b的值賦給a,(a=b)的值為b。
>> 按二進制右移
例如:
char a=66; /*二進制 01000010*/
char b=a>>3;/*結果為 00001000 左面補3個0 右面去掉3位*/
/*至此b=8 相當於66除以8(二進制1000),余數不要*/
『玖』 C語言中的/=是什麼含義
這是C語言里常用的復合賦值運算,下面解釋一下。
1.C
語言中的基本賦值運算
首先講解一下C語言中的基本賦值運算,其運算符為「=」,這里不是等於,而是賦值。舉例如下所示:
圖中,定義了三個變數a,b,c,分別把1賦值給變數a,把2賦值給變數b,把求和表達式a+b賦值給變數c。
2.復合賦值運算符
復合賦值運算符常見的符號有:+=、-=、*=、/=、%=,有兩方面的含義,首先做數學計算,而後再賦值。
從圖上可以看出,運算符兩邊的變數先做左邊的數學運算,然後將結果賦值給左邊的變數。這樣的寫法簡化了C語言的代碼,結構上看起來比較清爽,提升代碼效率。
舉例如下:
執行完a += 1後,a = 2;
執行完b -= a+5後,b=b-(a+5)=-5;
執行完c *= a-4後,c=c*(a-4)=-6;
c語言里有很多需要理解的符號,它跟數學符號很有關系,但有些又是區分於數學符號,比如「=」在數學上是等於的意思,所以a=1,我們讀作a等於1,可是如果在c語言里,「=」是賦值的意思,a=1是指把1賦值給a,而a==1才讀作a等於1。
所以我首先要弄清楚基本的運算符號如+,-,/,*,%,&,!=等的意思,至於乘法運算,c語言里沒有×這個符號,而是用了*,對於除法,沒有÷這個符號,用了/,例如5*3就是15,6/3就是2
像a=a+1,就是把a+1賦值給了a,我們可以簡便寫法那就是a+=1.
同理a-=1其實就是a=a-1.
a/=5就是a=a/5,a*=6就是a=a*6。
例如a=20,a*=6,那麼結果就是a=120
例如a=30,a/=6,那麼結果就是a=5
希望能解決到你的問題
這是C語言里的簡化寫法(也叫復合運算符)
即可將
加+ 減- 乘* 除/ 求余數%
五種運算符的表達式
a=a#x
表示為
a#=x
其中#表示五種運算符,x表示變數或某個值
其實++,--也是哦
『拾』 C語言中~的用法
是條件運算符,相當於 if() else 結構。