// 字符串的定義和初始化 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; }
