国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

C語言——字符函數(shù)和字符串函數(shù)

這篇具有很好參考價值的文章主要介紹了C語言——字符函數(shù)和字符串函數(shù)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1.assert斷言(判斷程序運行時是否符合條件)

<assert.h>頭文件定義了宏assert(),?于在運?時確保程序符合指定條件,如果不符合,就報 錯終?運?。這個宏常常被稱為“斷?”。

assert() 宏接受?個表達式作為參數(shù)。如果該表達式為真(返回值?零), assert() 不會產(chǎn)?任何作?,程序繼續(xù)運?。如果該表達式為假(返回值為零), assert() 就會報錯,在標(biāo)準(zhǔn)錯誤流stderr 中寫??條錯誤信息,顯?沒有通過的表達式,以及包含這個表達式的?件名和?號。

assert() 的使?對程序員是?常友好的,使? assert() 有?個好處:它不僅能?動標(biāo)識?件和出問題的?號,還有?種?需更改代碼就能開啟或關(guān)閉 assert() 的機制如果已經(jīng)確認(rèn)程序沒有問題,不需要再做斷?,就在 #include <assert.h> 語句的前?,定義?個宏 NDEBUG 。然后,重新編譯程序,編譯器就會禁??件中所有的 assert() 語句。如果程序?出現(xiàn)問題,可以移除這條 #define NDBUG 指令(或者把它注釋掉),再次編譯,這樣就重新啟?了 assert() 語句。

assert() 的缺點是,因為引?了額外的檢查,增加了程序的運?時間。?般我們可以在 Debug 中使?,在 Release 版本中選擇禁? assert 就?,在 VS 這樣的集成開發(fā)環(huán)境中,在 Release 版本中,直接就是優(yōu)化掉了。這樣在debug版本寫有利于程序員排查問題,在 Release 版本不影響??使?時程序的效率。

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

2.字符函數(shù)

頭文件<ctype.h>

基本格式:

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

1.字符分類函數(shù)

符號條件返回非0,不符合條件返回0。

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

2.字符轉(zhuǎn)換函數(shù)

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

示例:

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

3.字符串函數(shù)

3.1 strcpy函數(shù)

1.頭文件 <string.h>

2.基本格式

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

將源頭source中的字符串拷貝到目的地 destination 目標(biāo)數(shù)組中,包括 null 字符(并在該點停止)

源字符串必須以 '\0' 結(jié)束。

目標(biāo)數(shù)組必須足夠大。

目標(biāo)數(shù)組必須可修改。源字符串不可修改。

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

模擬實現(xiàn):

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

3.2 strcat函數(shù)

頭文件<string.h>

基本格式:

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

將源字符串中的字符連接到目標(biāo)字符串中,目標(biāo)字符串中的終止字符 null 將會被源字符串中的第一個字符所覆蓋,源字符串中的終止字符 null 也要連接到目標(biāo)字符串中。

源字符串中必須包含 '\0' 。

目標(biāo)字符串必須包含 '\0',否則不知道連接從哪里開始。

目標(biāo)空間必須足夠大,可以容納下源字符串中的內(nèi)容。

目標(biāo)空間必須可修改。

目的地和來源不可以重疊。否則將會造成字符串無限連接,直到棧溢出。

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

模擬實現(xiàn):

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

3.3 strcmp函數(shù)

比較兩個字符串的大小

頭文件<string.h>

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

從第一個字符開始按 ASCLL 碼值將兩個字符串的字符逐個進行比較,如果相同,則繼續(xù)執(zhí)行下一對,直到遇到字符不同或?\0 停止。

如果 str1 > str2 則返回值 >0

如果 str1 ==?str2 則返回值 ==0

如果 str1 <?str2 則返回值 <0

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

模擬實現(xiàn):

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言? ? ? ? ?C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

3.4 strncpy函數(shù)

1.頭文件<string.h>

2.基本格式:

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

將源字符串的前num個字符拷貝到目標(biāo)空間中

1.如果在拷貝num個字符之前就找到源字符串的末尾(null),即source的長度小于num,則剩余字符將用零填充,直至將num個字符拷貝到目標(biāo)空間中。

2.如果source的長度大于num,則不會在目標(biāo)空間末尾隱式附加 null 字符。因此,在這種情況下,destination?不應(yīng)被視為以 null 結(jié)尾的字符串(這樣讀取時它會溢出)。

目標(biāo)空間必須足夠大,可以容納下要拷貝的字符串

目標(biāo)空間必須可修改,源字符串不可修改。


目的地和來不得重疊

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

模擬實現(xiàn):

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

3.5 strncat函數(shù)

1.頭文件 <string.h>

2.基本格式:

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

1.將源字符串的前?num?字符追加目標(biāo)空間后,加上一個終止的 null 字符。

2.如果源?字符串的長度小于?num,則僅復(fù)制終止 null 字符之前的內(nèi)容,之后再加上一個終止的 null 字符。

目標(biāo)應(yīng)該足夠大,可以容納下連接的num個字符

目標(biāo)字符串必須可修改,源字符串不可修改

目標(biāo)字符串必須包含終止字符 '\0',否則不知道連接從哪里開始

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

模擬實現(xiàn):

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

3.6 strncmp函數(shù)

1.頭文件<string.h>

2.基本格式:

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

此函數(shù)開始比較每個字符串的第一個字符。如果它們彼此相等,則繼續(xù)執(zhí)行以下對,直到字符不同,直到達到終止的 null 字符,或者直到兩個字符串中的?num?個字符匹配,以先發(fā)生者為準(zhǔn)。

如果 str1 > str2 則返回值 >0

如果 str1 ==?str2 則返回值 ==0

如果 str1 <?str2 則返回值 <0

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

模擬實現(xiàn):

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

3.7 strstr函數(shù)

1.頭文件<string.h>

2.基本格式:

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

返回指向?str1?中首次出現(xiàn)的?str2?的指針,如果?str2?不是?str1?的一部分,則返回空指針。

字符串的?較匹配不包含 \0 字符,以 \0 作為結(jié)束標(biāo)志。
C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言
模擬實現(xiàn):
C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言? ? C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

3.8 strtok函數(shù)

1.頭文件:<string.h>

2.基本格式:

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

sep參數(shù)指向?個字符串,定義了?作分隔符的字符集合 ,通過sep字符串中的分隔符將str參數(shù)指向的 包含了0個或者多個由sep字符串中?個或者多個分隔符的 字符串進行分隔。
str參數(shù)指向了一個字符串,它包含了0個或者多個由sep字符串中?個或者多個分隔符分割的標(biāo)記。
? strtok函數(shù)找到str中的下?個標(biāo)記,并將其用'\0'結(jié)尾 ,返回?個指向這個標(biāo)記的指針。(注:
strtok函數(shù)會改變被操作的字符串,所以在使?strtok函數(shù)切分的字符串?般都是臨時拷?的內(nèi)容
并且可修改。)
? strtok函數(shù)的第?個參數(shù)不為NULL ,函數(shù)將找到str中第?個標(biāo)記,strtok函數(shù)將保存它在字符串 中的位置。
? strtok函數(shù)的第?個參數(shù)為 NULL ,函數(shù)將在同?個字符串中被保存的位置開始,查找下?個標(biāo) 記。
? 如果字符串中不存在更多的標(biāo)記,則返回 NULL 指針。
C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言
C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言
C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言
模擬實現(xiàn):
C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

3.9 strerror函數(shù)

1.頭文件<string.h>

2.基本格式:

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

strerror函數(shù)可以把參數(shù)部分錯誤碼對應(yīng)的錯誤信息的字符串地址返回來。
在不同的系統(tǒng)和C語?標(biāo)準(zhǔn)庫的實現(xiàn)中都規(guī)定了?些錯誤碼,?般是放在 errno.h 這個頭?件中說明的,C語?程序啟動的時候就會使??個全?的變量errno來記錄程序的當(dāng)前錯誤碼,只不過程序啟動的時候errno是0,表?沒有錯誤,當(dāng)我們在使?標(biāo)準(zhǔn)庫中的函數(shù)的時候發(fā)?了某種錯誤,就會講對應(yīng)的錯誤碼,存放在errno中,??個錯誤碼的數(shù)字是整數(shù)很難理解是什么意思,所以每?個錯誤碼都是有對應(yīng)的錯誤信息的。strerror函數(shù)就可以將錯誤對應(yīng)的錯誤信息字符串的地址返回。
打印0-10錯誤碼對應(yīng)的錯誤信息:
C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言

perror 有能力直接打印錯誤信息,打印的時候,先打印傳遞給perror的字符串,然后打印,再打印空格,最后打印錯誤信息。如果傳遞給perror的字符串為空字符串,直接打印錯誤信息。

頭文件:<stdio.h>

基本格式:

C語言——字符函數(shù)和字符串函數(shù),c語言,開發(fā)語言文章來源地址http://www.zghlxwxcb.cn/news/detail-857953.html

到了這里,關(guān)于C語言——字符函數(shù)和字符串函數(shù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • C語言:字符函數(shù)和字符串函數(shù)

    C語言:字符函數(shù)和字符串函數(shù)

    C語言:初識C語言 C語言:分支語句和循環(huán)語句 C語言:函數(shù) C語言:數(shù)組 C語言:操作符詳解 C語言:指針詳解 C語言:結(jié)構(gòu)體 C語言:數(shù)據(jù)的存儲 今天來盤一下字符函數(shù)和字符串函數(shù)。 C語言中對字符和字符串的處理很是頻繁,但是C語言本身是沒有字符串類型的,字符串通常

    2024年02月11日
    瀏覽(27)
  • C語言——字符函數(shù)和字符串函數(shù)

    C語言——字符函數(shù)和字符串函數(shù)

    assert.h 頭文件定義了宏assert(),?于在運?時確保程序符合指定條件,如果不符合,就報 錯終?運?。這個宏常常被稱為 “斷?” 。 assert() 宏接受?個表達式作為參數(shù)。如果該表達式為真(返回值?零), assert() 不會產(chǎn)?任何作?,程序繼續(xù)運?。如果該表達式為假(

    2024年04月25日
    瀏覽(21)
  • C語言字符函數(shù)和字符串函數(shù)詳解

    C語言字符函數(shù)和字符串函數(shù)詳解

    ? ? ? ?Hello, 大家好,我是一代,今天給大家?guī)碛嘘P(guān)字符函數(shù)和字符串函數(shù)的有關(guān)知識 ? ? ? ?所屬專欄:C語言 ? ? ? ?創(chuàng)作不易,望得到各位佬們的互三呦 在C語言中有一些函數(shù)是專門為字符設(shè)計的,這些函數(shù)的使用都需要包含一個頭文件ctype.h 如:(注:以下函數(shù)原型都

    2024年03月20日
    瀏覽(32)
  • 【c語言】字符函數(shù)與字符串函數(shù)(上)

    【c語言】字符函數(shù)與字符串函數(shù)(上)

    大家好呀,今天給大家分享一下字符函數(shù)和字符串函數(shù),說起字符函數(shù)和字符串函數(shù)大家會想到哪些呢??我想到的只有求字符串長度的strlen,拷貝字符串的strcpy,字符串比較相同的strcmp,今天,我要分享給大家的是我們一些其他的字符函數(shù)和字符串函數(shù),跟著小張一起去看看吧

    2024年02月13日
    瀏覽(26)
  • 【C語言】字符函數(shù)和字符串函數(shù)(1)

    【C語言】字符函數(shù)和字符串函數(shù)(1)

    #國慶發(fā)生的那些事兒# 大家好,我是蘇貝,本篇博客帶大家了解字符函數(shù)和字符串函數(shù),如果你覺得我寫的還不錯的話,可以給我一個贊??嗎,感謝?? 求字符串長度 strlen 長度不受限制的字符串函數(shù) strcpy strcat strcmp 長度受限制的字符串函數(shù)介紹 strncpy strncat strncmp 字符串查

    2024年02月08日
    瀏覽(24)
  • 進階C語言-字符函數(shù)和字符串函數(shù)

    進階C語言-字符函數(shù)和字符串函數(shù)

    ?注意事項: 字符串以 \\\'\\0\\\' 作為結(jié)束標(biāo)志, strlen函數(shù) 返回的是在字符串中 \\\'\\0\\\' 前面出現(xiàn)的字符個數(shù)(不包括 \\\'\\0\\\' ) 參數(shù)指向的字符串必須以 \\\'\\0\\\' 結(jié)束 注意函數(shù)的返回值是 size_t ,是無符號的 ?運行示例: ??1.1.1strlen函數(shù)的模擬實現(xiàn) ??1.計數(shù)器法 assert函數(shù) 的 作用 是斷言,

    2024年02月04日
    瀏覽(19)
  • C語言——字符函數(shù)和字符串函數(shù)(一)

    C語言——字符函數(shù)和字符串函數(shù)(一)

    ??前言: 這篇文章對我最近學(xué)習(xí)的有關(guān) 字符串的函數(shù) 做一個總結(jié)和整理,主要講解 字符函數(shù)和字符串函數(shù)(strlen,strcpy和strncpy,strcat和strncat)的使用方法,使用場景和一些注意事項 (附上實例) ??個人簡介:努力學(xué)習(xí)ing ??個人專欄:C語言入門基礎(chǔ) ??CSDN主頁 愚潤求

    2024年02月04日
    瀏覽(23)
  • C語言——字符函數(shù)和字符串函數(shù)(二)

    C語言——字符函數(shù)和字符串函數(shù)(二)

    ??前言: 上一篇文章C語言——字符函數(shù)和字符串函數(shù)(一)對 字符函數(shù)和字符串函數(shù) strlen , strcpy 和 strncpy , strcat 和 strncat 進行了初步的講解 這篇文章主要再講解幾個我們 常用到的其他字符串函數(shù) (附上實例): 1,strcmp和strncmp 2,strstr ??個人簡介:努力學(xué)習(xí)ing ??個

    2024年02月04日
    瀏覽(28)
  • C語言——詳解字符函數(shù)和字符串函數(shù)(一)

    C語言——詳解字符函數(shù)和字符串函數(shù)(一)

    Hi,鐵子們好呀!今天博主來給大家更一篇C語言的字符函數(shù)和字符串函數(shù)~ 具體講的內(nèi)容如下: 前言: 在編程的過程中,我們經(jīng)常要處理字符和字符串,C語言標(biāo)準(zhǔn)庫中提供了一系列庫函數(shù),接下來我們就學(xué)習(xí)一下這些函數(shù)。 眾所周知,C語言中提供了一系列的字符函數(shù),這些

    2024年03月17日
    瀏覽(25)
  • C語言——詳解字符函數(shù)和字符串函數(shù)(二)

    C語言——詳解字符函數(shù)和字符串函數(shù)(二)

    Hi,鐵子們好呀!之前博主給大家簡單地介紹了部分 字符和字符串函數(shù) ,那么這次,博主將會把這些字符串函數(shù)給大家依次講完! 今天講的具體內(nèi)容如下: 6.1.1 strcmp 函數(shù)介紹 它的函數(shù)原型如下: 具體的函數(shù)介紹如下圖所示: 從圖中我們得知: - 如果第一個字符串 PTR1 大于

    2024年04月10日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包