首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C >> C 語言入門

C 語言字符串完全指南:從基礎定義到常用操作函數

     編輯:C 語言入門

C 語言字符串完全指南:從基礎定義到常用操作函數

在 C 語言中,字符串並非內建的基本數據類型,而是以 空字符('\0') 結尾的一維字符數組。這意味著字符串的實際長度會比可見字符數多一位,用於存儲結束標記。

字符串的聲明與初始化

我們可以通過兩種方式創建字符串。第一種是逐字符初始化,需手動添加結束符:

char greeting[6] = {'H', 'e', 'l', 'l', 'o', '\0'};

第二種方式更為簡潔,利用字符串字面量讓編譯器自動補全結束符:

char greeting[] = "Hello";

以下圖示展示了字符串在內存中的佈局:

字符串輸出示例

編寫一個完整程序來驗證字符串輸出:

#include <stdio.h>
int main() {
    char greeting[6] = {'H', 'e', 'l', 'l', 'o', '\0'};
    printf("Greeting message: %s\n", greeting);
    return 0;
}

運行結果:

Greeting message: Hello

核心字符串操作函數

C 標準庫 <string.h> 提供了豐富的字符串處理函數,以下是最常用的六個:

函數功能描述
strcpy(s1, s2)將字符串 s2 複製到 s1
strcat(s1, s2)將字符串 s2 連接到 s1 末尾
strlen(s1)返回字符串 s1 的長度(不含結束符)
strcmp(s1, s2)比較兩字符串:相等返回 0,s1<s2 返回負值,s1>s2 返回正值
strchr(s1, ch)查找字符 ch 在 s1 中首次出現的位置,返回指針
strstr(s1, s2)查找字符串 s2 在 s1 中首次出現的位置,返回指針

綜合操作示例

#include <stdio.h>
#include <string.h>
int main() {
    char str1[12] = "Hello";
    char str2[12] = "World";
    char str3[12];
    int len;

    /* 字符串複製 */
    strcpy(str3, str1);
    printf("strcpy(str3, str1): %s\n", str3);

    /* 字符串連接 */
    strcat(str1, str2);
    printf("strcat(str1, str2): %s\n", str1);

    /* 獲取長度 */
    len = strlen(str1);
    printf("strlen(str1): %d\n", len);

    return 0;
}

運行結果:

strcpy(str3, str1): Hello
strcat(str1, str2): HelloWorld
strlen(str1): 10

掌握這些基礎操作後,您可以在 C 標準庫文檔中探索更多進階字符串處理函數,如 strncpy、strncat、strtok 等,以應對更複雜的文本處理需求。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved