a+1表示字符串中第1个字符(从0计数)开始,它代表一个地址没错,但是c++中字符串对<<的重载功能,表示从当前地址直到字符串结束到输出到标准输出,即打印端口,所以当char a[] = "asdf"时,cout << a+1就会打印sdf
char数组比较特殊, 你用int数组来看看字符串会连续输出, 直到遇见'\0'int数组就符合正常思维