张飞实战电子

  论坛   单片机   代码格式化
返回列表
查看: 6560|回复: 2
收起左侧

代码格式化

[复制链接]

42

主题

60

帖子

2690

积分

金牌会员

Rank: 6Rank: 6

积分
2690
发表于 2018-10-18 10:41:33 | 显示全部楼层 |阅读模式
程序员很多时候会谈到代码风格。当我们在一起开发的时候,统一的代码风格确实很重要。
    不过,每个人都有不同的喜好,按照别人的方式写代码都会不爽,所以今天介绍一个神器,Artistic Style,自动化代码格式工具。
    有了这个工具,我们可以在拿到别人的代码的时候,运行一下,将代码格式化为自己喜欢的格式。
    当我们需要将代码给到别人时,运行下,将代码再格式化为大家统一的风格。

      Artistic Style的官网是 http://astyle.sourceforge.net/
      下面介绍如何使用这个工具。
一、安装
      AStyle的安装很简单。在windows下面,我们只需将下载的压缩包解压缩,再设置下环境变量就Ok。
二、使用
      这样的工具一般是没有图形化界面的,所以设置好环境变量后,可以在cmd环境中运行。
      1 - 切换到需要修改的代码的目录。
      2 - 里面有hello.c文件,内容如下:
1.jpg
3 - 我们运行如下命令
      astyle --style=allman hello.c
      会输出如下
      格式化 hello.c
      现在文件内容变为:
2.jpg

  1. 参数:--style=allman
  2.       --indent=spaces=4
  3.       --indent-preproc-block
  4.       --pad-oper
  5.       --pad-header
  6.       --unpad-paren
  7.       --suffix=none
  8.       --align-pointer=name
  9.       --lineend=linux
  10.       --convert-tabs
  11.       --verbose
复制代码
   对代码进行格式化,内容会变为如下:
3.jpg
这已经是可以接受的代码风格啦。里面参数具体含义可以到官网查看帮助信息,或者直接就拿来使用。


三、编写成.bat脚本
       每次都进入cmd还是太麻烦了,所以我们可以将命令编写到一个.bat文件中,每次双击下,自动运行就好啦。至于文件名,可以使用--recursive *.c,h这样的格式,会格式化当前目录下所有的文件。

       希望大家以后都不必为格式这样的东西纠结,专注敲代码。但是代码命令风格之类的,还是需要自己注意,现在还没工具能帮你自动修改函数名。不过人工智能可能可以,哈哈哈。。。

回复

使用道具 举报

42

主题

60

帖子

2690

积分

金牌会员

Rank: 6Rank: 6

积分
2690
 楼主| 发表于 2018-10-18 10:42:57 | 显示全部楼层
虽然这一两行代码格式化看起来没啥,但是一个工程文件很多的时候,工具还是很方便的。自己一行一行改风格会吐血的。
回复 支持 反对

使用道具 举报

0

主题

10

帖子

50

积分

注册会员

Rank: 2

积分
50
发表于 2018-10-18 15:25:40 | 显示全部楼层
格式非常重要!特别是排除错误时!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

收藏:0 | 帖子:56

有图有真相