c语言里有关tab的问题想澄清一下

habike 2012-02-25 10:14:14
在编写的时候
按下tab键会往后跳四个格是用来对齐的,一般是往后四个格(一个空格是一格),也有可能是一个,三个目的使上下行对齐。
在运行的时候
若在双引号里按一个tab键相当于键入\t,同样是使结果在相隔7个空格(一个空格或数字是一格),运行时tab键占用内存是1个字节是吧,空格也是一个字节,用cout << sizeof('\t') << endl 测出的,对不?
另外还有一个问题是tab在那个输出界面是8格,怎么写个程序算出来并显示出来
各位大侠,请指教
...全文
471 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
酒鬼 2012-03-08
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 habike 的回复:]
vc6.0可以设置么,如果不能设置,怎样看他在那个显示界面里所占的列数,总不能目测吧,我是用的笨方法,一个一个估计的,有没有一个语句可以准确而简便的显示出tab键在显示界面的列数,而不是靠估计[/Quote]

建议用空格,多个空格代替制表符。。呵呵
habike 2012-03-01
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 xiarl 的回复:]

我理解,制表符或者说'\t'其实就是个字符,一个ascii码(是0x07吧),一个char(字节),只是这个ascii字符是个功能字符。不同的编辑器或显示程序对他的处理不一样。有的是出现它就跳动4个空格的距离,有的是8个。只是为了对齐用的。
vs里面可配置,见“工具》选项》文本编辑器》c/c++》制表符”。
你当然可以自己写着玩 if(charT = 0x07) cout<<八个空格。。。
……
[/Quote]
vc6.0可以设置么,如果不能设置,怎样看他在那个显示界面里所占的列数,总不能目测吧,我是用的笨方法,一个一个估计的,有没有一个语句可以准确而简便的显示出tab键在显示界面的列数,而不是靠估计
酒鬼 2012-02-28
  • 打赏
  • 举报
回复
if(charT == 0x07) cout<<八个空格。。。
酒鬼 2012-02-28
  • 打赏
  • 举报
回复
我理解,制表符或者说'\t'其实就是个字符,一个ascii码(是0x07吧),一个char(字节),只是这个ascii字符是个功能字符。不同的编辑器或显示程序对他的处理不一样。有的是出现它就跳动4个空格的距离,有的是8个。只是为了对齐用的。
vs里面可配置,见“工具》选项》文本编辑器》c/c++》制表符”。
你当然可以自己写着玩 if(charT = 0x07) cout<<八个空格。。。
一丝晨光 2012-02-26
  • 打赏
  • 举报
回复
这个是根据不同平台以及编辑工具不同而可能不同;
是可以定制的
牧野清风 2012-02-26
  • 打赏
  • 举报
回复
我还真没想过这个问题。留下个坐标,以后过来看看有没有大神解决了这个问题
habike 2012-02-26
  • 打赏
  • 举报
回复
测一下tab占的内存为几个字节,还有测出在输出界面跳过几个格,这两个程序怎么写,
habike 2012-02-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 cxsjabcabc 的回复:]

这个是根据不同平台以及编辑工具不同而可能不同;
是可以定制的
[/Quote]
那么能不能写个程序测一下呢?用c语言,c++都可以

64,282

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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