#include <cstdio>
#include <iostream>

using namespace std;

int main(){
    char a1[] = {'C', '+', '+'};//如果输出a1的话 他会输出到\0为止所以他会输出C++C++
    char a2[] = {'C', '+', '+', '\0'};
    char a3[] = "C++";
    // 0 = '\0'
    cout << a3 << endl;
    cout << a2 + 1 <<endl; //如果想从a2的+开始输出的话就写a2 + 1 为啥会使这样就会在指针里说 因为数组本身的变量名就是指针
    printf("%s\n", a3);
    
    char s[100];
    
    // scanf("%s", s);//读入字符串 千万不要加读入地址符号& 因为所有数组的名字本身就是一个指针
    
    // cin >> s + 1; //可以数组下标设置成1开始读入 输出也是 kip算法下标从1开始非常方便
    //读入遇到空格回车 才会停止 否则不会停止
    //在最新版本的c++中 gets函数被替代成fgets(读入的东西,最多读入多少字符,从哪儿个文件读入一般指(stdin))
    string m;
    fgets(s, 100, stdin);
    //cin也有一个读入一行 getline(cin, m);//getline不能读入一个字符串的 只能读入string string下节课再讲
    cout << s << endl;dqwuihdwdqwhuidwqhui
    // printf("%c", s);
    return 0;
}