C語言學習 字串相關操作函式

2021-10-23 17:42:44 字數 2262 閱讀 6526

在c語言程式設計中,關於字串的相關操作是非常常見的。在實際開發中,也會經常用到。下面就總結一下c語言中常見的字串相關的函式。本文參考

1、字串拷貝函式

為防止越界,destination指向的字元陣列的長度應該要足夠長,要能夠容納source.

//函式原型

char

* strcpy (

char

* destination,

const

char

* source )

;//函式返回值

destination

//例項**

1 #include

2 #include

3int

main

(void)4

程式輸出結果:

str1:sample string,str2:copy success!

2 字串連線函式

//函式原型

char

* strcat (

char

* destination,

const

char

* source )

;//示例程式

1 #include

2 #include

3int

main

(void

)

3 字串比較函式

//函式原型

int strcmp (

const

char

* str1,

const

char

* str2 )

;//該函式從每個字串的第乙個字元開始比較大小。如果str1比str2大,

//返回大於0的值。等於返回0。小於返回小1 的值

//示例程式

1 #include

2 #include

3int

main

(void

)while

(strcmp

(key,buffer)!=0

);11puts

("correct answer");

12return0;

13}

4 記憶體拷貝函式

void

* memcpy (

void

* destination,

const

void

* source, size_t num )

;//示例程式

#include

#include

struct

person, person_copy;

int main (

)

5 計算c字串的長度

//函式原型

size_t strlen (

const

char

* str )

;//這裡的size_t 是unsigned int型別

//返回c字串的長度,不包括『\0』字元

//有如下**

char mystr[

100]

="test string"

;//sizof(mystr)返回100,strlen(mystr)返回11

//示例程式

#include

#include

int main (

)

此外還有記憶體移動函式:

void

* memmove (

void

* destination,

const

void

* source, size_t num )

;

拷貝前num個字元到目標字串

char

* strncpy (

char

* destination,

const

char

* source, size_t num )

;#include

#include

int main (

)

程式輸出結果:

to be or not to be

to be or not to be

to be

C語言學習 字串

字串宣告 char 變數名 數量 示例 include intmain printf 輸出字串ch2 s n ch2 方法3 char ch3 省略字串長度,長度編譯器在編譯時會幫忙計算 printf 輸出字串ch3 s n ch3 方法4 char ch4 name 此時末尾不需要加上 0 大括號...

C 語言學習 字串

c 字串 在 c 語言中國,字串實際上是使用 null 字元 0 終止的一維字元陣列。因此,乙個以 null 結尾的字串,包含了組成字串的字元。下面的宣告和初始化建立了乙個 hello 字串。由於在陣列的末尾儲存了空字元,所以字元陣列的大小比單詞 hello 的字元數多乙個。char greetin...

Go語言學習 字串操作

今天我們繼續說一下,在go 語言中,字串是的一些相關操作。我們在對字串進行處理時,需要借助包 strings 下面我們說一下常用的字串處理函式 一 contains函式 查詢字串中是否包含某些值,返回bool結果。package main import fmt strings func main e...