變數是什麼? 是用於放資料的東西。 變數命名首字不可以是 數字
常量: const string str = "helloworld!";
*: 只有常量才可以賦值給常量
整型 乙個位元組佔8位
byte (8) 0 -- 255
sbyte (8) -127 -- 0 -- 128
short (16) 0 -- 65535 2^16 = 65536
ushort (16) -32767 -- 0 -- 32768
int (32) 42,9496,7296
uint (32)
long (64位)
ulong (64位) 無符號
浮點型float (32) 沒有符號的說法
double (64) 也有 64位,128位的
一般用於多**中,最大特點:不精確 。 財務資料堅決不可用。
為什麼浮點數是不精確的呢?
1. 因為浮點數是無限的集合
2. 而32位是有限的集合
3. 現在用乙個有限的集合來表示乙個無限的資料,所以自然會造成不精確。
定點型(貨幣型別)
decimal (64) 有限的集合 ,但可以結合單位,如千,萬,億之類的,組合來表示資料
補充:
object/object, string/string, double/double, float/float 等是等價的
浮點型往往是飛彈發射偏差的主要原因。
布林型別
bool b = true/flase; 只有2個資料,沒有別的。
char ch = 'a'; 1. 只能是乙個字元,用單引號括住 2.可以是中文 3.是個unicode字元 4.字元不可以是空的 char ch=''(wrong);
不可有tab鍵等,可以用轉義字元/
/t 製表符
/n/r 回車換行符
// 反斜槓
字串型別
string 字元陣列
補充:long lnumb = 123l;
ulong ulnumber = 123ul;
float fnumb = 12.4f;
double dnumb = 12.4d;
decimal dec = 12.4m;
object型別
是所有物件的基類
clr 不** 值型別
string str = "123" + 5; // 1235
編譯器會自動呼叫tostring()方法
運算子: ?
checked :檢查是否溢位 如果溢位就丟擲異常
unchecked :不檢查是否溢位 如果溢位被截斷,相當於環繞
as : 轉換,相當於顯示轉換
is :bool b = true is int;
(a>b)? a:b 三目運算子
& 與 255 & y = y
| 或 255 | y = 255
^ 異或 255 ^ y = 255 - y
>> 左移位 相當於除以2 (因cup中有相應的指令,所以執行速度更快)
<< 右移位 相當於乘以2
void 表示一種型別,只是表示該函式不返回任何值,不可用於什麼變數用
表示式,總返回乙個值
c 內建型別
c 定義了一組表示整數 浮點數 單個字元和布林值的 算術型別 arithmetic types 另外還定義了一種稱為 void 的特殊型別。void 型別沒有對應的值,僅用在有限的情況下。通常用作無返回值的函式的返回型別。算術型別的儲存空間依機器而定。型別儲存空間是指用來表示該型別的位 bit 數。...
C 基本內建型別
算術型別 算術型別分為兩類 整型 integral type,包括字元和布林型別在內 和浮點型。算術型別的尺寸 也就是該型別資料所佔的位元數 在不同機器上有所差別。下表列出了c 標準規定的尺寸的最小值,同時允許編譯器賦予這些型別更大的尺寸。某一型別所佔的位元數不同,它所能表示的資料範圍也不一樣。c ...
C 內建型別轉換
toboolean 轉換為布林型。bool tobyte 轉換為位元組型別。byte tochar 如果可能的話,把型別轉換為單個 unicode 字元型別。char todatetime 把型別 整數或字串型別 轉換為 日期 時間 結構。datatime todecimal 把浮點型或整數型別轉換...