搞不明白这行为什么可以选择性换行

钟-eating 2020-05-28 11:28:55
这是一个for语句i++,为什么可以做到打印数组时每逢i mod10余9时换行,也就是十个数换行 这里“\n”[布尔值]和“ \n”[布尔值]第二个多一个空格,效果相反,这个效果的逻辑和原理是什么啊 有没有大佬能教教我这个原理是啥,我是新手
...全文
99 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
棉猴 2020-05-29
  • 打赏
  • 举报
回复
#include<iostream>
#include <string>
using namespace std;
int main()
{	
	cout << "Hello"[true]<<endl;//------字符串与[]之间没有空格-------
	cout << "-------------------" << endl;
	cout << "Hello" [true]<<endl;//------字符串与[]之间有空格-------
	cout << "-------------------" << endl;
	cout << "Hello"[false];
	return 0;
}
钟-eating 2020-05-29
  • 打赏
  • 举报
回复
引用 3 楼 qybao的回复:
相当于从下列字符中取字符打印,布尔值是真则打印第一个字符,是假则打印第二个字符 char s[]={‘\n’, ‘\0’} //换行符,字符串结尾符(相当于空字符串)
不对哈,前面有个空格那个,然后true是1,false是0,数组从0开始,所以true时是换行,相当于从这个字符串数组中取出第二项
qybao 2020-05-29
  • 打赏
  • 举报
回复
相当于从下列字符中取字符打印,布尔值是真则打印第一个字符,是假则打印第二个字符 char s[]={‘\n’, ‘\0’} //换行符,字符串结尾符(相当于空字符串)
真相重于对错 2020-05-29
  • 打赏
  • 举报
回复
明白"\n"是个什么类型,就清楚了
钟-eating 2020-05-29
  • 打赏
  • 举报
回复
噢我去,我搞明白了,,

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧