C語言是沒有編碼的。它的編碼就是平台的默認編碼。
比方說在windows 上漢字編碼用gb2312 或者 說cp936(GBK一般的windows默認代碼頁,windows分為不同的代碼頁,可以查看一下MSDN)。
http://msdn.microsoft.com/zh-cn/goglobal/cc305153(en-us).aspx
C里char 就是一個字節。你定義一個漢字,比方說 char *p=“中”C語言用兩個字節來存儲;
p指向的兩個字節存儲的就是‘中’的gb編碼。分別是‘\xd6\xd0’。
當然如果用printf("%s",p) 輸入到屏幕的話,它會自動解碼輸出‘中’這個字。
如果在linux平台下,它一般是uft-8編碼的,道理大概一樣。