C語言,有一種格式叫signed char,範圍是

2022-07-02 19:01:54 字數 5436 閱讀 9017

1樓:匿名使用者

負值的一般是列印不出字元來的,但有例外的

對於漢字來說,負值的作用可以用來表示漢字,兩個負值的字元就可以拼乙個漢字出來。當然,對於不同編碼,拼出來的漢字是不同的,比如utf-8用的是3個字元拼出乙個漢字來

2樓:

char是字元型別 不只是代表ascii還有其他的

3樓:

signed char代表8位二進位制的有符號整數.

char代表字元.可以是無符也可以是有符,取決於編譯器.在解釋值時要轉換成有符或無符的轉型.

unsigned char代表無符號整數.

這三個對編譯器來說是不太一樣的.要分清楚.

字符集都用無符數來表示,不能叫負數,ascii碼有0到127,共128個.這三個型別都能完美表示,如果超過了128的範圍得看你用哪個**頁了,如windows下936代表大陸gbk編碼.你那所謂的負值單個的不能表示字元,得再加乙個負值的字符合起來表示乙個無符的gbk編碼的雙位元組字.

如果你用美國英語的**頁,那剩下的128個字元就表示一些特殊的字元.可參看iso8859-1國際標準.

剛學c語言 請問ascii碼值為128-255字元型資料轉為整型變數時得到的是-128--1的值 怎樣算的 謝謝

4樓:匿名使用者

0的ascii值為16,ascii值轉換為整形資料很簡單,只要字元代表的ascii值減去0代表的ascii值也就是減去16就是轉換後的整形資料,希望能解答你的疑惑

c signed char型變數的取值範圍是-128~127,問:取負值有什麼意義? 5

5樓:匿名使用者

沒什麼意義 只是數字的表示方式而已. -128-127 和 0--256 位元組記憶體一會事. 有符號和無符號僅僅取值方式不一樣 ,表示數值範圍不一樣而已.

6樓:貴華燦僧琛

負值的一般是列印不出字元來的,但有例外的

對於漢字來說,負值的作用可以用來表示漢字,兩個負值的字元就可以拼乙個漢字出來。當然,對於不同編碼,拼出來的漢字是不同的,比如utf-8用的是3個字元拼出乙個漢字來

c語言中char的數值範圍

7樓:黑屋的寂寞

按八位來算:

在計算機裡面是用補碼表示的,128的二進位製碼是:10000000,這個東西在計算裡面並不是128,因為最高位是符號,它是個負數,那麼負數的原碼是多少呢,我們知道如果補碼的符號位為「1」,表示是乙個負數,求原碼的操作可以是:符號位為1,其餘各位取反,然後再整個數加1。

所以,10000000取反後就是11111111,把符號位去了就是01111111再加1就是10000000就是-128了。

其實你看-127是10000001,這個很好理解,-128加1不就是-127

在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++的語言標準或一些經典書籍如thec++programing language中都有很清楚的說明。

判斷編譯器的預設char符號

#include

int main(void)

else

return 0;

}char 還在pascal語言中應用。在pascal語言中,字元常量是由單個字元組成,所有字元採用ascii編碼也稱ascii碼

c語言中有關有符號字元型(char)的問題

8樓:匿名使用者

1、字元型(character)資料是不具計算能力的文字資料型別,用char表示。它包括中文字元、英文本元、數字字元和其他ascⅱ字元,其長度(即字元個數)範圍是0-254個字元。

2、字元型變數是用來儲存單字元的一種變數:如:char a='a'; 而字串就是用來保佑多個字元的變數,c語言中用字元陣列來表式乙個字串 如:

char name=。字元和字串的區別在於是用雙引號,還是單引號,雙引號表字串,單引號表字元,如:"a"和'a' 第乙個是字串,而第二個是字元。

9樓:匿名使用者

字元長度是一位元組 帶符號 範圍也就是-128~127,也就是你定義乙個字元變數的時候他的值範圍是這個 注意是變數 而ascii碼是字元常量對定的,就是ascii是一些固定的字元常量對應在計算機中的儲存,比如鍵盤上面的乙個輸入鍵 比如你定義char a='a'; 這裡a只是個變數名,他的值是'a',也就是ascii 碼65char a=-'a';這裡a在計算機中的儲存則是-65 就是1(這裡接65的二進位制表示)但是 要是你定義char a='a'+'a';則會報錯 因為a的值超出了127定義 unsigned char a='a'+'a';則是正錯的,因為a的值沒有超出範圍 不知道這樣你理解了嗎

10樓:匿名使用者

有符號char的數值範圍是-128~127,可是字元的ascii碼怎麼會沒有負數的呢?自己編個**看看有沒有吧,將整型(正負)轉換為字元型,我只知道字元值有255個,是什麼字元我就不記得啦!有一些字元時不可列印的,你要知道這個東西。。。。

至於unsigned char ,也編個看看吧,要記住用無符號字元型。

11樓:匿名使用者

ls說的很對,lz告訴你乙個容易理解的:int與char通用

c語言中char是什麼意思

12樓:哎喲

其為定義字元型變數。

char用於c或c++中定義字元型變數,只佔乙個位元組,取值範圍為 -128 ~ +127(-2^7~2^7-1)。c語言中如int、long、short等不指定signed或unsigned時都預設為signed,但char在標準中不指定為signed或unsigned,編譯器可以編譯為帶符號的,也可以編譯為不帶符號的。

使用指定長度的固定長度表示的字串;比如char(8),則資料庫會使用固定的1個位元組(八位)來儲存資料,不足8位的字串在其後補空字元,在excel中char函式用於返回對應發於數字**的字元。

13樓:四捨**入

在c語言中「char*」是宣告乙個字元型別的指標,定義資料型別,char可以定義字元有變數、陣列、指標。

例如:char *string="i love c#!"

定義了乙個字元指標變數string,用字串常量"i love c#!",對它進行初始化。對字元指標變數初始化,實際上就是把字串第1個元素的位址(即存放字串的字元陣列的首元素位址)賦給string。

14樓:

在c語言中「char」是可容納單個字元的一種基本資料型別,即char是字元變數的說明符。字元變數的取值是字元常量,即單個字元。字元變數型別說明的格式和書寫規則都與整型變數相同。

在c/c++中,對程式設計師所要輸入的變數要給予其型別,主要的的資料型別分為兩種,一種是數字型別,一種是字元型別,而「char」就是定義字元型資料的關鍵字。

例如:對於字元變數a作賦值,就要先定義為char a="你好"

擴充套件資料

c語言中基本資料型別及規則:

整形包括:char、short、int、long、long long,這5個也預設為signed xx ;

規則:short至少16位;int至少和short一樣;long至少32位,且至少和int一樣長;long long至少64位,且至少和long一樣長。

其中,後面4個都有無符號變體。unsigned short、unsigned int、unsigned long、unsigned long long.

注意,unsigned本身是unsigned int的縮寫。

在32位和64位計算機上,對於整形唯一不同的就是int和指標的大小,其中32位計算機上int佔2位元組,64位上佔4位元組。指標大小和int大小相同。

15樓:匿名使用者

char是字元變數的說明符。

在c/c++中,對程式設計師所要輸入的變數要給予其型別,主要的的資料型別分為2種,一種是數字型別,一種是字元型別,而char就是定義字元型資料的關鍵字,例如:對於字元變數a作賦值,就要先定義為char a="你好"。

16樓:匿名使用者

c語言中,char* 表示字元指標型別,當其指向乙個字串的第乙個元素時,就可以表示這個字串。

c語言廣泛應用於底層開發,c語言能以簡易的方式編譯、處理低階儲存器。c語言是僅產生少量的機器語言以及不需要任何執行環境支援便能執行的高效率程式語言。

17樓:靠名真tm難起

char是容納單字元的一種基本資料型別,不能儲存漢字。嚴格來說,char 其實也是整數型別(integer type),因為 char 型別儲存的實際上是整數,而不是字元。計算機使用特定的整數編碼來表示特定的字元。

擴充套件資料:char是c/c++整型資料中比較古怪的乙個,其它的如int/long/short等不指定signed/unsigned時都預設是signed,但char在標準中是unsigned,編譯器可以實現為帶符號的,也可以實現為不帶符號的,有些編譯器如psos的編譯器,還可以通過編譯開關來指定它是有符號數還是無符號數。

18樓:雲南新華電腦學校

char 是乙個資料型別,作用才是定義字元型變數(單個或是字串)。

比方int 是整形資料,int a = 3;這裡int 是型別, a 是整型變數,3是賦值;

char s = 'a'; char是字元型別,s是字元型變數,a是賦值給變數s;

char s = "c program"; char是字元型別,s是字元型陣列,"c program"是賦給陣列的值。

19樓:匿名使用者

樓上完全是誤導人,什麼字元變數啊!

char 是乙個資料型別,作用才是定義字元型變數(單個或是字串)。

比方int 是整形資料,int a = 3;這裡int 是型別, a 是整型變數,3是賦值;

char s = 'a'; char是字元型別,s是字元型變數,a是賦值給變數s;

char s = "c program"; char是字元型別,s是字元型陣列,"c program"是賦給陣列的值。

20樓:寶寶我是飛飛

定義乙個單字元 比方說char a='d';

有一種愛叫放手。有一種愛叫執著。有一種愛叫報復。有一種愛叫珍惜。有一種愛叫不離不棄。有一種愛叫做義

愛是包容而不是放縱 愛是關懷而不是寵愛 愛是相互交融而不是單相思 愛是百味而不全是甜蜜.真正的愛情並不一定是他人眼中的完美匹配 您好,愛是包bai容而不 是放縱 愛是du 關懷而zhi不是寵愛 愛是相互交融dao而不是單相思 愛是專百味而不全是甜蜜屬.真正的愛情並不一定是他人眼中的完美匹配 而是相愛...

有一種感情叫無緣,有一種放棄叫成全

有一種感情叫無緣,有一種放棄叫成全?這話和放屁有區別嗎?不是針對你說什麼,只是覺得這個題目起的也太偉大了吧。思念,有多少重量?需要多少堅強 理智才能夠承載?總是在喧鬧的街頭,錯身而過的人群,相似的身影,片刻的失神 總是在囚禁 自己的昏暗小屋,看見每一件事物,聽見每一陣聲響,思念起那個人 總是在夜半冰...

有一種經歷叫成長,有一種經歷叫成長600字

有一種經歷叫成長 樹苗盼望成長為參天大樹,雛鷹嚮往成長為翱翔的雄鷹,我也渴望成為英雄兒郎,建功立業。我從小就盼望快快長大,長大後就可以像諸葛亮那樣,輕搖羽扇,談笑間,檣櫓灰飛煙滅 我可以作為一名為祖國自由而戰的勇士,體驗一下 醉臥沙場君莫笑,古來征戰幾人回 的悲壯 我可以肩挑著重擔,替父母撫平眼角的...