標籤:style blog io color ar os 使用 sp div
記憶體定址由大到小,優先分配記憶體位址比較大的位元組給變數;變數越先定義,記憶體位址就越大;取得變數的地址:&變數名;輸出地址:%p;一個變數一定先進行初始化,才能使用。
scanf函數只接受變數的地址,scanf函數是一個阻塞式的函數,等待使用者輸入,使用者輸入完畢後,就會將使用者輸入的值賦值給對應的變數。
一次性輸入多個數值,並且以某些符號隔開,輸入時要使用同樣的符號隔開;如果scanf參數中以空格隔開,實際輸入可以以空格、tab、斷行符號作為分隔字元。scanf中不能寫\n。
取餘運算(模運算):%兩邊都是整數,%取餘結果的正負性只跟%左邊的數值有關。
// 自動類型轉換(double->int) int a = 10.8; // 自動型別提升(int->double) double c = 10.6 + 6; // 強制類型轉換(double->int) int b = (int) 10.5;
// 複合賦值運算子 a += 5; // a = a + 5; a += 5 + 6 + 4; // a = a + (5 + 6 + 4);
a++的值是a自增之前a的值,++a的值是a自增之後a的值,a--,--a同理。
//int size = sizeof(10); //int size = sizeof 10.9; int a = 10; //int size = sizeof(a); //int size = sizeof a; int size = sizeof(char); // int size = sizeof char; // 錯誤的
在關係運算中,條件成立就返回1,真;條件不成立就返回0,假。
邏輯與 條件1 && 條件2
邏輯或 條件1 || 條件2
邏輯非 !條件:如果條件成立,就返回0;如果條件不成立,就返回1。
三目運算子 條件 ? 數值1 : 數值2
比較大小時,常量值放左邊,變數放右邊。
注意賦值運算子,不要寫成兩個等號。
if語句後面不要寫分號。
// 下面的代碼是錯誤的:範圍不明確 if (10 > 6) int a = 5; // 如果要在if後面的語句中定義新的變數,必須用大括弧{}
break:退出整個switch語句,如果case後面沒有break,就會執行後面所有case中的語句,直到遇到break為止。
如果要在case後面定義新的變數,必須用大括弧{}包住。
if和switch:
1. if語句能完成的功能,switch並不一定能完成。
2. 在有些情況下,if語句和switch語句可以互換。
3. switch能完成的功能,if語句都能完成。
iOS基礎學習第3天