char


          char是C/C++整型數據中比較古怪的一個,其它的如int/long/short等不指定signed/unsigned時都默認是signed,但char在標準中是unsigned,編譯器可以實現爲帶符號的,也可以實現爲不帶符號的,有些編譯器如pSOS的編譯器,還可以通過編譯開關來指定它是有符號數還是無符號數。

        

描述:高級編程語言數據類型
定義:計算機編程語言(c、c++、java、VFP等)中可容納單個字符的一種基本數據類型。
C/C++中,char是C/C++整型數據中比較古怪的一個,
而且關於char還有一個特殊的語言就是char *,它在C/C++中有專門的語義,既不同於signed char *,也不同於unsigned char *,專門用於指以'\0'爲結束的字符串
C語言是弱類型還沒什麼,如果在C++中,你可以試一試,用


     char *p="abcd";
    是可以通過編譯的
    但如果用



signed char *p="abcd";
還是
unsigned char *p="abcd";
都是不能通過編譯的。
關於這些在C/C++的語言標準或一些經典書籍如The C++ Programing Language中都有很清楚的說明。
判斷編譯器的默認char符號


#include<stdio.h>
int main(void)
{
  char c=-1;
  if(c<200)
  { printf("signed\n"); }
  else
  { printf("unsigned\n"); }
  return 0;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章