关于char 、 char[] 、 string差别
总结:
-
关于读入的区别:
char c只能用cin来读入char c[N]只能用cin来读:如果有多个单词它只会接受第一个单词
i. 注意**每个字母**存数组一个位置 ``` 传入:111 2 3, c[0] = 1, c[1] = 1, c[2] = 1, ``` ii(重点),但如果你要直接输出,他会整个数组给你一块输出,不会再一个位置一个位置的输出 ``` 传入:111 2 3, cout << c; 输出:111 ```
string str可以用cin来读,也可以用getline(cin,str)来读,但是读入效果不一样
i. 如果用cin来读,它只接受第一个空格前的单词(注意是单词,不是字母),举个例子 ``` 传入:111 222 333 ,将str遍历全部输出 : 111 ``` ii. 如果用getline(cin,str)来读,它可以直接把一行全读进去 ``` 传入:111 222 333 ,将str遍历全部输出 : 111 222 333 ```
-
关于输出的区别
char c[N]和string str都可以用以下两种方式遍历输出
for(auto c : s)
cout << c ;
for(int i = 0 ;i < len ;i++)
cout << s[i];
注意 :
char c[N]获取数组长度的方法为:strlen(c);
string s获取字符串长度的方法为:s.size();