天天看點

C\C++ 一些函數

1、c_str()

用法:#include <string>

将string 轉換為char *。

備忘之用,不斷更新。

2、strcmp

原型:extern int strcmp(const char *s1,const char * s2);

用法:#include <string.h>

功能:比較字元串s1和s2。

一般形式:strcmp(字元串1,字元串2)

說明:

當s1<s2時,傳回值<0

當s1==s2時,傳回值=0

當s1>s2時,傳回值>0

即:兩個字元串自左向右逐個字元相比(按ASCII值大小相比較),直到出現不同的字元或遇'\0'為止。如:

"A"<"B" "a">"A" "computer">"compare"

特别注意:strcmp(const char *s1,const char * s2)這裡面隻能比較字元串,不能比較數字等其他形式的參數。

3、sscanf

函數原型:

int sscanf( const char *, const char *, ...);

int sscanf(const char *buffer,const char *format,[argument ]...);

buffer 存儲的資料

format 格式控制字元串

argument 選擇性設定字元串

sscanf會從buffer裡讀進資料,依照argument的設定将資料寫回。

用法:#include<stdio.h>

功能:sscanf() - 從一個字元串中讀進與指定格式相符的資料.

舉例:sscanf(b, "Cached: %d", &cache); 将char* b中的字元串按照格式讀進cache中,cache是int 型資料。

4、snprintf

函數原型:int snprintf(char *str, size_t size, const char *format, ...);

功能:

将可變個參數(...)按照format格式化成字元串,然後将其複制到str中

(1) 如果格式化後的字元串長度 < size,則将此字元串全部複制到str中,并給其後添加一個字元串結束符('\0');

(2) 如果格式化後的字元串長度 >= size,則隻将其中的(size-1)個字元複制到str中,并傳回一個負值,并給其後添加一個字元串結束符('\0')

所需頭檔案:#include <stdio.h>

備注:

c c++