码迷,mamicode.com
首页 > 其他好文 > 详细

控制台打印1

时间:2021-04-26 13:25:33      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:pos   系统   文件   utf-8   返回   乱码   今天   mat   光标移动   

系统:win10

今天在使用控制台打印内容时, 发现个人对制表符不是很清楚,在此记录,以便日后查阅.

------------------------------分割线---------------------------

函数:     int printf(const char*  _Format,  ...)

注1:这货竟然有返回值, 返回输出的字符数量

注2:关于输出乱码的问题:printf打印,包括Qt控件上显示的文本,应该都是一个道理,你在源文件上写入的字符串的编码,和你源文件本身的编码是对应的,而在控制台或者控件上显示文本时,此时文本的默认编码方式由系统决定.

例如:在utf-8 格式的文件中写入 printf("中文\n");此时"中文"这两个字就是以utf-8编码方式存在的, 而如果你的控制台默认编码方式是GBK,此时在控制台打印时,他老人家就会以为你传入的字符串为GBK编码,显然这中间存在误会,然后就出现了乱码.

 

转义字符: 

打印字符时常用一些转义字符来达到更好的显示效果,具体如下:

\a  (alert)发出蜂鸣或可见警报(我的电脑是win10的提示音)

\b  (backspace) 将光标移动到当前位置的前一个位置,如果当前已经在初始位置,则行为不确定

\f   (form feed)  在下一个逻辑页开始时将光标移动到该页的初始位置? (原文:Moves the active position to the initial position at the start of the next logical page),查找未果,有机会再说.

\n  (new line)  将光标移到下一行

\t  (horizontal tab)  将光标移动到当前行的下一个水平列表位置, 如果光标当前位置已经越过了最后一个制表位置,则行为不缺定(我们常用\t来代替四个空格,难道是一直在使用不确定的行为吗..)

\v (vertical tab)  将光标移动到下一个垂直位置的初始制表位置

 

控制台打印1

标签:pos   系统   文件   utf-8   返回   乱码   今天   mat   光标移动   

原文地址:https://www.cnblogs.com/mrh2o/p/14698546.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!