【杂谈】空格还是Tab?

news/2024/9/23 10:51:12/

目录

一、Tab键和空格键的区别  

二、Tab键的优势劣势

三、空格的优势劣势

四、为什么不提倡Tab



一、Tab键和空格键的区别  

  • TAB叫做制表符,就是制表用的,或者说是对齐用的,属于控制字符,按下后一次空出2/4/8个字符的位置,在编程中用'\t'表示;
  • 而空格属于可见字符,按下后一次空出1字符的位置,在编程中用' '表示。

二、Tab键的优势劣势

优点:

  • 快捷:只需要按一下。
  • 节省空间:一个制表符'\t' 就能完成两个/四个/八个空格字符' '才能完成的工作。

缺点:

  • 不统一:有的文本编辑器下是两个空格,有的是四个。
  • Tab在一些旧的编辑器或终端中可能无法正确显示。

三、空格的优势劣势

优点:

  • 整齐统一。
  • 被所有文本编辑器接收。

缺点:

  • 不够快捷:要连续按多次。
  • 空间开销更大:一个制表符'\t' 就能完成两个/四个/八个空格字符' '才能完成的工作。

四、为什么不提倡Tab

  • 主要是宽度不统一:如在vi/vim中Tab的宽度默认为8个空格,但在VS Code中默认为2个或4个。
  • 就因为上面这一点原因,几乎所有的编程规范都在告诉大家,不要用tab来缩进,如Python就不提倡使用Tab来缩进。

        "使用空格来缩进还是使用Tab来缩进" 和 "使用Emacs还是使用Vim",就类似于生活中的甜豆腐脑和咸豆腐脑之争一样,属于编程界的”圣战“了,有时候甚至能看到“使用空格缩进和使用Tab缩进的程序员的工资比较”这样的文章。


------------------------END-------------------------

才疏学浅,谬误难免,欢迎各位批评指正。


http://www.ppmy.cn/news/1449268.html

相关文章

2024第84届中国(云南昆明)教育装备展示会

关于第84届中国教育装备展示会将在云南昆明举办! 谨此奉邀! 第84届中国教育装备展示会组委会 一、展会时间、地点 布展时间:2024年10月22日-24日 开展时间:2024年10月25日-27日 撤展时间:2024年10月27日 16:00-24:00 地点&a…

Virtualbox7.0.10--创建虚拟机

前言 下载Virtualbox7.0.10,可参考《Virtualbox–下载指定版本》 Virtualbox7.0.10具体安装步骤,可参考《Virtualbox7.0.10的安装步骤》 Virtualbox7.0.10创建虚拟机,可参考《Virtualbox7.0.10–创建虚拟机》 Virtualbox7.0.10安装Ubuntu20.0…

Python转换文本文件为PDF文档,绘制文本到PDF文档页面

文本文件因其轻便、易编辑的优势,常用于日常文字记录与数据交换;而PDF文档则以高保真、格式稳定和良好的阅读体验,成为正式报告、文献发布等场景的首选。将文本文件转为PDF,在PDF内精准绘制文本,旨在兼顾内容的规范呈现…

ConrurrentHashMap 1.8

ConrurrentHashMap 1.8 在ConrurrectHashMap内部有16个segment,每个segment都可以看作一个独立的Hashmap。 插入 首先根据我们的hashcode所对应的segment,然后在这额哥segment找到对应的桶,通过CAS算法进行插入(预期值和当前值…

调教AI给我写了一个KD树的算法

我不擅长C,但是目前需要用C写一个KD树的算法。首先我有一份点云数据,需要找给定坐标范围0.1mm内的所有点。 于是我开始问AI,他一开始给的答案,完全是错误的,但是我一步步给出反馈,告诉他的问题,…

ASP.NET汽车销售管理系统的设计与开发

摘 要 随着人们生活水平的不断提高,人们对汽车的消费和需求也越来越旺盛。很多汽车销售公司的业务环节仍然运用人工记账的传统方法,既容易出错又会导致账目混乱,查询和统计起来也非常不方便,费时又费力,严重时会给公…

c3 笔记6 认识css样式表

<link>与import应该如何选择?事实上&#xff0c;使用link与import链接外部样式文件的效果看起来是一样的&#xff0c;区别在于<link>是HTML标记而import属于CSS语法。<link>标记有rel、type与href属性&#xff0c;可以指定CSS样式表的名称&#xff0c;这样就…

jenkins汉化不完全问题解决

jenkins安装完Localization:Chinese(Simplified)中文语言包后&#xff0c;发现是出现汉化不完全或者部分汉化的情况&#xff0c;如下图&#xff1a; 解决方法&#xff1a; 启动命令中指定语言 -Duser.languageen_US.UTF-8 或者 -Duser.languageC.UTF-8原因分析&#xff1a;安…