有人能解答一下吗? 我现在明白应该是给每个变量直接加4 我加的是结果 但我还是想知道为什么出来的是汉字

img


想将China 换成Glmre
用c++ 怎么写啊 为什么我执行出来是汉字😭😭
下面是源代码

img

因为输出的是不可见字符,多个不可见字符的内码正好是某个汉字编码,就输出成汉字了

因为+=复合赋值语句把字符c1,c2,c3,c4,c5赋值为其他值了,所以打印会不合预期。
把第6到10行的+=改为=即可。因为赋值是用=,+=是在原来的值的基础上再加上+=符号后面的值,所以需要用=。修改如下:

#include <iostream>

using namespace std;

int main(void){
    
    char c1=67,c2=104,c3=105,c4=110,c5=97;
    cout<<(char)c1<<(char)c2<<(char)c3<<(char)c4<<(char)c5<<endl;
    //赋值用符号= 
    c1=71;
    c2=108;
    c3=109;
    c4=114;
    c5=101;
    cout<<(char)c1<<(char)c2<<(char)c3<<(char)c4<<(char)c5<<endl;
} 

img