* 手寫乙個c程式的步驟(面試題)*
鏈結 執行 .out 檔案
* 預處理指令的分類(面試題)以」#」開頭*
預處理指令的特點
什麼時候需要多檔案開發
如何分模組開發?
如果想要用某乙個模組中的函式
直接引入 這個密會的.h檔案就可以了
* 注意*
建立.h和.c檔案快捷鍵是: command + n
寫模組
進製寫法
解釋輸出方式
二進位制以 0b 開頭
逢二進一
無八進位制
以 0 開頭
逢八進一
%o十進位制
編譯器預設
逢十進一
%d十六進製制
以 0x 開頭
逢十六進一%x
*四個概念
* 數碼:
* 資料中每一位的數字
* 數字
* 數碼在這個資料中的位置 從右(0開始)到左一次增加
* 基數
* 每乙個數碼 可以有多種不同的表示,即 進製
* 位權
* 數碼 * 基數 的數字次方
進製轉換方向
轉換方法
理解2一》10
按位權相加
從最後一位數 1-2-4-8類推,是0則跳過1則相加
10一》2
按位權展開
乙個整數一直除2 直到得0位置 然後餘數逆序輸出
8一》10
按位權展開相加
176(8進製): 1 × 8 ^ 2 + 7 × 8 ^1 + 6 × 8^0 = 64 + 56 + 6 = 126(10進製)
10一》8
除8取餘
除8取餘倒敘排列
8一》2
1拆3將每乙個數拆分成三個二進位制數
2一》8
3合1每三個二進位制組合成乙個8進製
16一》2
1拆4將每乙個數拆分成四個二進位制數
2一》16
4合1每四個二進位制組合成乙個16進製制
怎麼用注意:
按位與運算
1. 只要是按位運算:都需要轉成二進位制的補碼形式進行計算
如果對應位都是1 那麼結果是1
如果對應位不都是1 那麼結果是0
口訣:同1則1,有0則0
按位或運算
只要是按位運算:都需要轉成二進位制的補碼形式進行計算
口訣:有1則1,同0則0
按位取反運算
1. 只要是按位運算:都需要轉成二進位制的補碼形式進行計算
口訣:
0變1 1變0
按位異或運算
1. 只要是按位運算:都需要轉成二進位制的補碼形式進行計算
口訣:
相同為0 不同為1
交換2個數:
int a = 10
;int b = 20
;方法一:
int temp = a
;a = b;
b = temp;
方法二:
a = a+b;//a = 30 b = 20
b = a-b;//a = 30,b = 10
a = a-b;//a = 20,b = 10
方法三:
a = a ^ b;
b = a ^ b;
a = a ^ b;
按位左移或右移
1. 只要是按位運算:都需要轉成二進位制的補碼形式進行計算
按位左移:
口訣:高位溢位捨棄,低位補0
8<<2: 相當於 8 * (2的2次方)
按位右移:
口訣:低位溢位捨棄,高位補符號位
16 >> 3:相當於 16 / (2的三次方)
150 >>2: 相當於150 / (2的2次方)
按位運算子
基本運算子 按位與運算子,可以對變數s的特定位清零,這時可以設定乙個變數mask,將mask中的特定位賦值為0,其他位置為1,然後作運算 s s mask 即可特定位清零。使用按位與運算,可以取變數s的指定位的值,這時可以設定乙個變數mask,將mask中的指定位賦值為1,其他位置賦值為0,然後作運...
按位運算子
1.按位取反或者二進位制補碼 把1變為0,把0變為1 2.按位與 任何位與0組合都為0,任何位與1組合都為本身 應用 關閉位 清空位 需要開啟乙個值中的特定位,同時保持其他位不變 所有位為0 把1變為0,其餘位不變。假設有乙個二進位制數00011010 從左到右的第4位1表示開關,現在要關閉開關 置...
按位運算子
部分參考scdxmoe的部落格 c語言提供了6個位操作運算子。這些運算子只能作用於整數運算元,及只能作用於帶符號或無符號的char,short,int,long型別。或運算 應用 常用來對乙個資料的某些位置1。方法 找到乙個數,對應x要置1的位,該數的對應位為1,其餘位為零。此數與x相或可使x中的某...