數組
格式:int arr[4] = {1,2,3,4};
{0,1,2,3}
每一個數組都有下標,下標從零開始,所對應數組
下標是爲了訪問數組的元素
若是有N個數組,那麼最後的下標就爲N-1
如,要訪問數組5
#include<stdio.h>
int main()
{
int arr[7] = {1,2,3,4,5,6,7};
printf("%d\n" , arr[4]);
return 0;
}數組
利用所學的while循環,打印數組裏全部元素
#include<stdio.h>
int main()
{
int i = 0;
int arr[10] = {1,2,3,4,5,6,7,8,9,10};
while(i < 10)
{
printf("%d\n" ,arr[i]);
i++;
}
return 0;
}ide
操做符
算數操做符:+,-,*,/,%(取模)
移位操做符:<< 左移 , >>右移
移的二進制位。
位操做符(二進制位):
&(按位與):0爲假,1爲真,假&真 = 假。只有真&真 = 真
如:3&5 = 001 = 1
3的二進制數 = 011
5的二進制數 = 101
3 & 5 = 001
|(按位或):一個真就爲真
^(按位異或):對應二進制相同則爲0,對應的二進制相反,則爲1函數
賦值操做符
= 右邊的值賦給左邊
== 判斷是否相等
複合賦值符
+= -= *= /= %=……
a = a+ 10 == a += 10
a = a - 20 == a -= 20測試
單目操做符:
!邏輯反操做:取相反,爲真就取假,假 = 0指針
=
<
<=
!=:測試不相等
==:測試相等
邏輯操做符:C語言中。0爲假,非零爲真
&&:邏輯與(而且)0 == 假 1 == 真
||:邏輯或(有一個爲真,就爲真)
條件操做符:
exp1?exp2:exp3: exp(表達式)
[]:下標應用操做符
():函數調用操做符生命週期
雙目操做符:+ - * / %
三目操做符:作用域
原碼,反碼,補碼
符號位:開頭的第一位數字,即爲符號位。
原碼:直接按照正負寫出的。
反碼:符號位不變,其它位按位取反。
補碼:反碼加一。
-2
原碼:10000000000000000000000000000010
反碼:1111111111111111111111111111111111101
補碼: 1111111111111111111111111111111111110
負數存的都是補碼。 it
關鍵詞
typedef :類型重定義(本身從新給關鍵詞命名)
如:unsigned int number = 20;
typedef unsigned int u_int;
static:是用來修飾函數的。修飾局部變量,當static修飾局部變量時,局部變量的生命週期變長。
static修飾全局變量,做用域變短,只能再該文件使用,做用域變短
static修飾函數,改變了函數的連接屬性。正常函數,具備外部連接屬性。但被static修飾了事後,就成了內部連接屬性,使其不能在其它文件使用了。
如:void test ()
{
static int a = 1; //a是一個靜態局部變量
a++:
printf("a = %d\n" , a);
}
int main()
int i = 0;
while (i<5)
{
test();
i++;}
extern-申明外部符號io
#define定義的標識符常量和宏
宏:宏是在符號(標識符)的基礎上加了個參數,宏是帶參數的。class
指針指針:用來存放地址的,指針大小,在32位平臺上是4byte。在64位平臺上是8byte。