C語言基礎 02字串和格式化輸入 輸出

2021-07-15 01:18:15 字數 2889 閱讀 7547

字串和格式化輸入/輸出

一、字串

c語言沒有與字串相關的變數型別,字元的儲存是在char陣列當中,並以空字元(\0)結束。

(1)字串常量

舉個栗子:char a[ ]=「abc」;

雙引號表示乙個字串常量。c語言在處理字串常量是會自動在結尾加空字元(\0)。字串文字之間沒有間隔或者間隔是空格,ansi c會將其自動連線起來。

(2)字串陣列及其初始化

字串陣列初始化有兩種方式,但不可以先定義後賦值。

char a[10]=「abc」;

char a[10]=;

注意的是:如果空字元,得到的將是字元陣列,而不是字串。

易錯點:

char a[10];a[10]="abc";//

乙個字元怎麼能容納乙個字串?況且a[10]也是不存在的!

char a[10];a="abc";//這種情況容易出現,a雖然是指標,但是它已經指向在堆疊中分配的10個字元空間,現在這個情況a又指向資料區中的abc常量,這裡的指標a出現混亂,不允許!

二、格式化輸入/輸出

1、printf()函式

(1)轉換說明

%c

乙個字元

%d有符號十進位制整數

%e有符號小數指數形式

%f有符號小數十進位制形式

%o有符號八進位制整數

%p乙個指標

%s乙個字串

%u無符號整數

%x有符號十六進製制整數

(2)使用格式

printf()函式使用格式如下:

printf("control string",item1,item2);

item1,item2可以是常量、變數和表示式。

(3)轉換說明修飾與標誌

標誌

見下表digit

字段寬度最小值。若不能容納列印內容,系統會使用更寬的字段

.digit

精度。小數點後列印數字的位數

h和整數轉換說明一起,表示short或unsigned short型別

hh和整數轉換說明一起,表示short char或unsigned char型別

l和整數轉換說明一起,表示long int或unsigned long int型別

ll和整數轉換說明一起,表示long long int或unsigned long long int型別

l和浮點轉換說明一起,表示long double

z和整數轉換說明一起,表示乙個size_t值

+有符號數:若為正,則列印帶加號的數字;若為負,則列印帶減號的數字

-專案左對齊。專案從最左側列印

空格有符號數:若為正,列印的數字帶前導空格;若為負,帶減號符號。+標誌會覆蓋空格標誌

0所有數字格式,用前導0填充字段寬度。若出現-標誌或指定了精度則忽略該標誌

2、scanf()函式

scanf()函式會跳過空白符(空格、製表符和換行符)直到遇到第乙個非空白符或與轉換說明不匹配的字元,並把該字元送回輸入(快取區)。這意味著程式下次讀取輸入時,將從該字元開始。

(1)轉換說明

同printf()。

(2)使用格式

scanf()使用格式如下:

scanf("轉換說明1轉換說明2",位址1,位址2);

值得注意的是:

(3)返回值

返回正確讀入專案的個數,若沒有讀取則返回0。

C語言基礎 9 字串格式化輸入和輸出

字串是記憶體中一段連續的char 空間,以 0 結尾 putchar輸出乙個char printf是輸出乙個字串 printf格式字元 字元 對應資料型別 含義 d int 接受整數值並將它表示為有符號的十進位制整數 hdshort int 短整數hu unsigned short int 無符號短...

基礎教程 Python格式化字串(格式化輸出)

print 函式使用以 開頭的轉換說明符對各種型別的資料進行格式化輸出,具體請看下表。表 1 python 轉換說明符 轉換說明符 解釋 d i 轉換為帶符號的十進位制整數 o轉換為帶符號的八進位制整數 x x 轉換為帶符號的十六進製制整數 e轉化為科學計數法表示的浮點數 e 小寫 e轉化為科學計數...

3 1 2 字串格式化

類string.formatter 類formatter 有下面的公共訪問方法 format format string,args,kwargs format 是最基本的 api方法。它把引數 args 和kwargs 按格式字串 format string 進行格式化。這個函式只是呼叫 vform...