C語言 字符串的聲明與使用


 

// 字符串的定義和初始化
void test() {
    // "mj"
    char s[] = {'m', 'j', '\0'}; // 字符串"mj"
    
    char s1[3] = {'m', 'j', '\0'}; // 字符串"mj"
    
    char s2[3] = {'m', 'j'}; // 並不是正規的字符串
    
    char s3[] = "mj"; // 字符串"mj",會自動在尾部加上一個\0
}

// 輸出字符串
void test1() {
    char s[] = "mj";
    printf("%s\n", s);
    printf("%s\n", "lmj");
    
    // printf可以輸出多個字符串
    printf("%s %s %s\n", "mj", "lmj", "ios");
    
    // puts只能輸出一個字符串,puts會自動換行
    puts("ios");
    
    puts("ios");
}

// 輸出字符串2:\0的作用
void test2() {
    char s1[] = {'l', 'm', 'j', '\0'};
    // puts(s1);
    
    char s2[] = {'m', 'j'};
    
    // 打印一個字符串
    // puts(s2);
    printf("%s", s1);
}

// 字符串的輸入
void test3() {
    // itcast mj
    
    char s2[] = "mj";
    
    char s1[2];
    // s1就是數組的地址,所以不用&s
    // 輸入完畢后,會自動在s1的尾部加一個\0
    // scanf("%s", s1);
    
    // 從s1這個地址開始賦值用戶輸入的字符序列
    // 在尾部會自動加上一個\0
    gets(s1);
    
    // 輸出用戶輸入的字符串
    printf("s1 = %s\n", s1);
    
    printf("s2 = %s", s2);
}

int main(int argc, const char * argv[])
{
    
    test3();
    return 0;
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM