發表文章

目前顯示的是 12月, 2013的文章

[C/C++] 別忘了在char陣列結尾加/0...

今天就為了這個問題debug很久...問題是這樣的:我想要製造儲存一個BIG5字元的char陣列。(每個BIG5字元需要兩個char儲存,舉例來說,"A5 D0"為"田")理所當然寫了這樣一段: char BIG5_character[2]; BIG5_character[0] = 0xA5; BIG5_character[1] = 0xD0; cout << BIG5_character; 理論上應該會看到"田",實際上田是出來了,但後面跟了一串亂碼:"田p~+" 原因在於一個完整的字串,必須要在結尾放一個結束字元 \0,忘了放則cout會繼續往下輸出。 因此把原code修改一下: char BIG5_character[3]; BIG5_character[0] = 0xA5; BIG5_character[1] = 0xD0; BIG5_character[2] = 0;          // 結束字元的ASCII編號是0 cout << BIG5_character; 這樣就可以得到正確輸出"田"了,不過這麼基本的東西我竟然到現在才知道... STL用太多了XD

Linux的環境變數設定

env 列出環境變數 ex: env export A=B 將環境變數A設為B 若設定值含有空格,請用單引號包住整個內容。 ex: export test_var=1 export test_var='test linux' unset A 刪除環境變數A ex: unset test_var source [file_path] 在此terminal中匯入環境變數檔(每次重開新terminal,就要重新匯入一次),source檔可以放在任意資料夾中,不需要副檔名。 (ubuntu) 使用ubuntu時,可以使用/etc/environment作為環境變數檔,匯入時較方便。 文檔的格式如下: PATH="aaa:bbb:ccc" TEST="This is a test" ex: source /etc/environment source var_file