(三)字串和格式化IO

2021-07-22 18:50:27 字數 2297 閱讀 6550

1、字串

字串在c

語言中只有常量沒有對應的字串型別,所以在儲存時借助字元陣列儲存,即儲存在一塊連續的空間中。

"helloworld"

計算機在儲存字串時,會在後面自動加'\0'

1》計算字串長度:

---》呼叫字串函式

:strlen

#include #include int main(void)

結果:len = 10,

原因:字串處理函式

strlen

計算的是字串的實際長度

---》使用運算子

:sizeof

#include #include int main(void)

結果:len = 11,

原因:sizeof

計算的是該資料占用記憶體空間的長度

strcpy,strcat,strcmp

2、格式化io

1》io

:in(輸入)

,out(輸出)

|      |    in (輸入)                   |鍵盤、檔案

| 程 |    

| 序 |     ----------> (外界    | 螢幕、檔案

|      |      out (輸出)               | buf快取、網路

2》格式化:

按一定的格式輸入或者輸出,叫格式化輸入或輸出,一般輸入輸出都是通過呼叫io

函式實現的

3》格式化輸出函式:

int printf(const char *format, ...);     //向螢幕上輸出

int a = 101;

float b = 23.45;

printf("a = %d, b = %f\n", a, b);

%d和

%f為轉換說明符,在輸出時,會被後面的引數值替換

注意:----》轉換說明符的個數必須和變參的個數相等

----》轉換說明符的型別必須和變參的型別匹配

----》輸出

float

和double

型資料時,都使用%f

----》變參可以是:變數,常量,表示式,指標

(位址)

----》如果要列印%本身,則需要用%%代替。

----》轉換說明符:

----》修飾符:

int fprintf(file *stream, const char *format, ...);   //向檔案裡輸出(寫入

) int sprintf(char *str, const char *format, ...); //向

str快取

(記憶體空間)輸出

(寫入)

int snprintf(char *str, size_t size, const char *format, ...);  //向

str快取

(記憶體空間)輸出

(寫入)

4》格式化輸入函式:

int scanf(const char *format, ...);    //從鍵盤輸入

#include int main(void)

注意:

----》轉換說明符的個數必須和變參的個數相等

----》轉換說明符的型別必須和變參的型別匹配

----》輸入

float

資料必須用

%f,輸入

double

型資料必須用

%lf

----》變參只能是位址量

scanf返回值:正確接收引數的個數,例如:

#include int main(void)

int fscanf(file *stream, const char *format, ...);  //從檔案中輸入

(獲取資料)

int sscanf(const char *str, const char *format, ...); //從快取(記憶體

)中輸入

(獲取資料)

3 1 2 字串格式化

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

7 8 9字串格式化

格式化輸出語句,可以利用佔位符實現資料的輸出。常用的佔位符有字串 s 字元 c 整數 d 小數 f 等。方法名稱 描述public static string format string format,各種型別 args 根據指定結構進行文字格式化顯示 public class stringdemo...

三 字串 一

三 字串 1。直接量三種寫法 1 單引號,不會替換變數,且只支援 兩個轉譯字元 2 雙引號,會進行變數替換,雙引號能支援除了 以外的所有轉譯符 3 heredoc,比如 string end of string haha hehe hoho.hehe end of string 其中end of s...