C語言中字元常量有什麼用,C語言中字元常量與字串常量有什麼區別?

2021-03-17 09:46:12 字數 5247 閱讀 1079

1樓:匿名使用者

字元常量:在c語言中一個字元常量代表ascii字符集中的一個字元,在程式中用單引號把一個字元括起來作為字元常量。大小寫字母代表不同的字常量;單引號中的空格也是;字元常量只能包含一個字元;字元常量只能用但括號括起來。

比如是常用字元的acii

'a』 97

'a』 65

常量一般指隨時拿過來就可以用的,並且是不會變的.在程式中,比如char c = 'y';

c是字元型變數,『y』是字元常量.可以賦值。

c語言中字元常量與字串常量有什麼區別?

2樓:小哥

字元常量:在c語言中一個字元常量代表ascii字符集中的一個字元,在程式中用單引號把一個字元括起來作為字元常量。大小寫字母代表不同的字常量;單引號中的空格也是;字元常量只能包含一個字元;字元常量只能用但括號括起來。

下面是常用字元的sacii

'a』--'z' 97------122'a』--'z' 65-------90'0'---'9' 48-------57字串常量:字串常量是用雙引號括起來的,在c語言中系統會在每個字串的最後自動加入一個'\0'作為字串的結束標誌。

區別:'z'是字元常量,佔一個位元組;"z"是字串常量,佔兩個位元組,其中一個放'\0'。

它們兩個的用法都明白了,區別就知道了

3樓:壬存邵代雙

字元常量是一個字元,如'a','4','\0','\b','\142'等等,字串常量可以是一個字元"n",也可以沒有字元('\0'),更多的是多個字元。

作為字元常量,二者間沒有區別,在c++中,為了方便,將字串定義成一個類string,但用char

*說明和定義的串常量仍然是一樣的,沒有任何區別。

4樓:like—耳機

首先,它們都是常量,所以不可以被改值。

字元常量永遠是一個個體,也就是它只是一個字元而已。

而字串常量是一個群體,就像人們說的一句話,字串常量中是由若干個字元常量構成的,當然可以沒有,不過系統會給其加一個『\0』,至於為什麼要加,找d.m.ritchie。

就像人們說的話一樣,字元常量是單詞,而每一句話的後面都要加上句號,表示這句話說完了,這個大概是『\0』擬人的一個作用吧,我這麼認為。

另外字元常量其實對於計算機來說是一個二進位制數,也就是它是一個數值,所以你可以對一個字元常量來進行邏輯運算,比如『b』 - 『a』 = 1。

字串常量是話語,作為條件的判斷以及顯示器輸出的物件。

祝你好運~

5樓:匿名使用者

字元常量可以用%c的格式或putchar函式輸出,字串常量不可以,另外在記憶體中佔得位元組不一樣

6樓:微雨31初霽

字元常量是一個字元,在程式中字元是用單引號括起來的。字元常量由0個或若干個字元組合而成,在程式中字串是用雙引號括起來的,在儲存時系統自動在字串最後面加一個結束符"\0"

7樓:月光下的日軍

都是常量,不能修改,區別是字元常量是一個字元,用『 』單引號,而字串常量用雙引號,如「a」,雖然是一個字元,但他是字串常量。

c語言中 所說的字元常量和字串常量是什麼意思?

8樓:匿名使用者

一個字元常量就是一個能在計算機裡表示的字元用單引號括起來,比如說'a','b' '9','('等等,字串就是一個字元序列,用雙引號括起來比如說 「yujihui」,"abcdefg","6985%^(",就是一個字串常量。

9樓:匿名使用者

字元常量使用單引號引用,其中只能包含一個字元,例如'a'是一個字元常量,表示字母a

'abc'這樣的就是錯誤

字元常量實質上是一個8位的整數,ascii編碼例如你可以試一試printf("%d",'a');輸出'a'的ascii碼

字串常量使用雙引號引用,是一個字元的序列其中可以包含0個,1個或多個字元

比如"hello world"是一個字串常量在c語言中,沒有字串的資料型別,字串是以陣列的形式存在記憶體之中,通過指向第一個字元的指標來進行操作

例如char s_array=;

c語言中字元常量與字串常量有什麼區別?

10樓:小哥

字元常量:在c語言中一個字元常量代表ascii字符集中的一個字元,在程式中用單引號把一個字元括起來作為字元常量。大小寫字母代表不同的字常量;單引號中的空格也是;字元常量只能包含一個字元;字元常量只能用但括號括起來。

下面是常用字元的sacii

'a』--'z' 97------122'a』--'z' 65-------90'0'---'9' 48-------57字串常量:字串常量是用雙引號括起來的,在c語言中系統會在每個字串的最後自動加入一個'\0'作為字串的結束標誌。

區別:'z'是字元常量,佔一個位元組;"z"是字串常量,佔兩個位元組,其中一個放'\0'。

它們兩個的用法都明白了,區別就知道了

11樓:靖蓄宇辰錕

字元常量是一個字元,如'a','4','\0','\b','\142'等等,字串常量可以是一個字元"n",也可以沒有字元('\0'),更多的是多個字元。

作為字元常量,二者間沒有區別,在c++中,為了方便,將字串定義成一個類string,但用char

*說明和定義的串常量仍然是一樣的,沒有任何區別。

c語言裡面的常量是什麼?

12樓:幻翼高達

c語言裡面的常量是指不會變化的常數或編碼,例如圓周率3.14就可以定義為一個常量。

「常量」的廣義概念是「不變化的量」,例如:在計算機程式執行時,不會被程式修改的量;數學函式中的某一個量,例如每一個具體的圓的半徑、直徑數值;物理學中的靠近地面的重力加速度;真空中的光速數值;不同的微粒的各自的質量。

一層含義指它們的編碼方法是不變的,但是嚴格來說「人為規定的某一種方法也可以因地制宜而人為改變,所以其本身數值大小『不是『常量』的內涵」。比如字元'a'無論在硬體、軟體還是各種程式語言中,它的資訊編碼即為 「 0x41」。

13樓:哥們兒會_臭臭

c語言的常量有整數常量,實型常量,字元常量,符號常量等。

1、整數常量

整數常量是指直接實用的整形常數,又稱整形常數或者整數,例如,1,-9等。整數常量可以是長整形、短整型、符號整型和無符號整型。

a)八進位制數

八進位制整數必須以0開頭,即以0作為八進位制數的字首。數字取值範圍為0—7.八進位制數常是無符號數

b)十進位制數

十進位制數是不需要在其面前加字首的。十進位制數中包含的數字0—9組成。

c)十六進位制數

常量前面使用0x作為字首,表示該常量是用十六進位制表示。十六進位制中所包含的數字由0—9以及字母a—f組成(十六進位制數中的字母可以使用a—f大寫形式,也可以使用a—f小寫形式。)

整數資料都以二進位制的形式儲存在計算機中,其數值以補碼的形式表示。一個正數的補碼與其原碼形式相同,一個負數的補碼是將該數絕對值的二進位制形式按位取反再加1.

2、 實型常量

實型稱浮點型,由整數和小數部分組成,其中用十進位制的小數點隔開。表示實數的方式由科學計數和指數方式兩種。

a)科學計數方式

科學計數方式就是使用十進位制的小數方法進行描述實型

b)指數方式

若實數非常大或非常小,使用科學計數方式則不利於觀察,此時可以使用指數方法顯示實型變數。使用字母e或者e進行指數顯示,如45e2表示4500,而45e-2表示的是0.45

在編寫實型常量時,可以在常量的後面加上那個符號f或者l進行修飾。

f表示該常量是float單精度型別,l則表示該常量是為long double長雙精度型別。

如果不在後面加上字尾,那麼預設的狀態下,實行常量為double雙精度型別。

3、   字元型變數

字元型常量可以分為字元常量和字串常量

a)字元常量

字元常量分為一般字元常量和特殊字元常量。

使用單撇號括起一個字元的形式即字元常量。使用字元常量需要注意以下幾點:

字元常量只能用單撇號括起來, 不能使用單引號或其他括號。

字元常量中只能包括一個字元,不能是字串。

字元常量是區分大小寫的。

單撇號代表定界符,不屬於字元常量中旳一部分。

單撇號裡面可以是數字、字母等c語言字符集中除』和\以外所有可現實的單個字元,但是數字被定義為字元之後則不能參與數值運算。

特殊字元常量就是轉義字元。轉移字元是c語言中表示字元的一種特殊形式,其含義是將反斜槓後面的字元轉換成另外的意義。

在使用注意字元時應注意:

轉義字元只能使用小寫字母,每個轉義字元只能看成一個字元。

垂直製表符\v和換頁符\f對螢幕沒有任何影響,但會影響印表機執行響應操作。

在c語言程式中,使用不可列印字元時,通常用轉義符表示。

如果反斜槓之後的字元和他不構成轉移字元,則』\』不起轉義作用,將被忽略。

b) 字串常量

字串常量是一對用雙引號括起來的若干字元序列。字串中字元的個數稱為字元的長度,長度為0的字串稱為空串。

c語言中儲存字串常量時,系統會在字串的末尾自動加一個』\0』作為字串結束的標誌。

4、   符號常量

在c語言中,通常將程式中的常量定義為一個識別符號,這個常量就叫做符號常量。在使用符號常量之前必須先進行定義,大多數情況下,符號常量用大寫英文字母表示。定義符號常量的一般形式:

#define 符號常量名  常量值

14樓:兄弟連教育北京總校

c語言中的常量一共有4種:

整數常量:integer-constant浮點常量:floating-constant列舉常量:

enumeration-constant字元常量:character-constant常量是一個右值,可以把右值賦給一個左值

int a = 1; 這裡的1確實是常量,是一個整數常量

15樓:

c語言的常量包括字面量,和用 const 定義的變數。

像 123、"aaaaa 文字"、3.14f、這些都是字面量。

而像 const float pi=3.14f,這個pi 就是const常量。

16樓:匿名使用者

const 修飾的 變數

如: 1. #define pi 3.1415926f;

2. const float pi 3.1415926f;

c語言中為什麼用巨集定義字元常量(字母)可以賦值給字元

因為巨集是一個簡單替換,所以c語言中用巨集定義一個字元常量 一個字母 可以內賦值給字元變數。實質容是在編譯之前會把巨集替換掉,然後再編譯。例如 define a 5 void main 在編譯之前a已經被替換成5了,所以就可以賦值給num。漢字根據編碼方式不同,所佔的大小2 4個位元組 不等,漢字賦...

c語言字串常量的問題,C語言字串常量的一個問題。

字串bai遇到 0表示結束 第一個字du符串就相zhi當於dao abc123 那版麼長度為6 第二個字串就相當於 abc 那麼長度為3但是實際操作權發現並非如此,如下程式 include memcpy c1,abc123 01de n 0x20 printf s n c1 char c2 0x20...

C語言中 a 為什麼不屬於字元型常量呢?有高手為我詳細講解一下switch語句的用法嗎

a 是字元常量 a char 2 int a 1 switch a 其中最後一個break case else 下面那個 可以不加如果把break全去掉,就會輸出a is onea is twoa is more than two 因為程式會從 case 相應的值 處開始執行,一直到switch結束...