C编程风格.

                            C语言编程风格.

关于编程风格,不同书上有不同规范,不同公司都有自己的一套定义.根据自己的编程习惯做个简要说明.

1.变量定义

在定义变量时,前缀使用变量的类型,之后使用表现变量用途的英文单词或单词缩写,且每个单词或缩写的首字母大写.

无符号变量使用u8,u16,u32...  eg:unsigned char u8Temp;
有符号变量使用s8,s16,s23...  eg:int s32Temp;
浮点数变量使用 f32,d64....... eg:float f32Temp double d64Temp;
字符串变量使用s; eg:char sTemp;
数组变量使用a; eg:unsigned char au8Temp[10]; int a32Temp[10];
指针变量使用p; eg:unsigned char* pTemp;
枚举变量使用e; eg: enum Temp eTemp;
结构体变量使用st; eg:struct student stTemp;

PS:另外需要说明的是.

unsigned char gu8NoiseDetectFlag = 0;      //定义全局变量要在变量名前加上g(globar-->全局的意思)
unsigned char u8PrePointCnt = 0;         //定义局部变量就省略掉.

2.宏定义

对于宏定义使用:使用大写或者大写+下划线的方式.

PS:#define CHIP_SENSING_TIMES 1

3.程序排版

一行程序的开始使用tab键进行对其,一行的中间使用空格键进行对齐.

//PS:注意tab缩进.

void Locate_FindStableFreq(void)
{
  uint8_t u8Idx;
  for(u8Idx=0; u8Idx<20; u8Idx++)
  {
    TP_FrequencyHopping(FALSE);
    if(Locate_CheckNL() <= gcstSysAlgorithm.u8NL_MinLevel)
    break;
  }
}

4.注释的书写

这里注释分为函数头注释,程序中代码注释.

函数头注释使用如下形式.

PS:由于写的程式并不是自己一个人使用,通常很多时候一个project会由一个Team完成,这时候就非常有必要针对每个function加上必要的注释,这样别人拿来使用的时候,只需通过函数头注释描述就大概能知道此function用途跟意义,这样可以节省开发时间!!!

/*--------------------------------------------------------------------------------------------------------------------*/
/* Function: DrvSPI_Busy                                               */
/*                                                          */
/* Parameters:                                                  */
/* eSpiPort [in]: Specify the SPI port                                        */
/*                                                           */
/* Returns:                                                       */
/* TRUE: The SPI port is in busy.                                         */
/* FALSE: The SPI port is not in busy.                                      */
/*                                                        */
/* Description:                                                 */
/* Check the busy status of the specified SPI port.                               */
/*-------------------------------------------------------------------------------------------------------------------*/
BOOL DrvSPI_Busy(E_DRVSPI_PORT eSpiPort)
{

  // NUC103 have 3 SPI only.
  if(eSpiPort >= eDRVSPI_MAX) 
    return FALSE;

  return ((SPI_PORT[eSpiPort]->CNTRL.GO_BUSY)?TRUE:FALSE);
}

5.测试代码

在编译的同时,需要注意添加适当的测试代码,这样可以减轻以后测试代码时的工作量.

这里的第五条,起始已经不仅仅是变成风格的问题,涉及到编程效率,变成习惯的范畴.

不过这真的是一个非常好的习惯!!!

时间: 2024-10-24 01:57:43

C编程风格.的相关文章

程序员要遵守的一些优秀编程风格

无论你是业余的还是专业的程序员,正确的编程风格,不但有助于提升软件产品的功能,还可以明显减少软件灾难的产生.今天,我们就来探讨一下有助于我们获取更佳编程风格的一些最好的规则. 代码的可读性至上 代码要能可阅读和可理解,就需要格式化成一致的方式.对函数和变量的命名应有意义,注释的表达应该简洁而准确.并且,准确地记录代码中所有棘手的部分是十分重要的.你必须清楚软件程序为什么能工作以及为什么能在所有可能的情况下顺利工作的原因. 遵循正确的命名约定是必须的 当需要给类.函数和变量命名时,你需要遵循以下指

【Spring】SpringMVC之REST编程风格

REST架构是一个抽象的概念,目前主要是基于HTTP协议实现,其目的是为了提高系统的可伸缩性.降低应用之间的耦合度.便于架构分布式处理程序. 在URL中设置使用如下方式: /{变量名1}/{变量名2} 在代码中向Controller方法注入参数:  (@PathVariable("变量名1") String str1,@PathVariable("变量名2") String str2) 例如: @RequestMapping(value="/book/{b

强调一下编程风格

讲完了Java的基础语法,大家就可以编写简单的程序代码了,这里有必要强调一下编程风格. 代码风格虽然不影响程序的运行,但对程序的可读性却非常重要.自己编写的程序要让别人看懂,首先在排版方面要非常注意. 其实每个人的编程风格.每个软件开发公司的编程风格都不一样.一个人编写的程序代码,就应该能让别人看懂,甚至是过了很长时间,自己也要看的懂,否则这个程序就成了一个死程序. 编程风格是指编程时的格式,让程序看上去就很有层次感.下面通过一些例子,说明编程风格的重要性: public class math{

C++服务器开发之基于对象的编程风格

Thread.h #ifndef _THREAD_H_ #define _THREAD_H_ #include <pthread.h> #include <boost/function.hpp> class Thread { public: typedef boost::function<void ()> ThreadFunc; explicit Thread(const ThreadFunc& func); void Start(); void Join();

编程风格(Coding Style)要求

编程风格(Coding Style)要求2.1.1 文件(1) 每个模块(module)一般应存在于单独的源文件中,通常源文件名与所包含模块名相同.(2) 每个设计文件开头应包含如下注释内容:? 年份及公司名称.? 作者.? 文件名.? 所属项目.? 顶层模块.? 模块名称及其描述.? 修改纪录.2.1.2 大小写(1) 如无特别需要,模块名和信号名一律采用小写字母.(2) 为醒目起见,常数(`define定义)/参数(parameter定义)采用大写字母.2.1.3 标识符(1) 标识符采用传

Javascript编程风格

转自阮一峰 http://www.ruanyifeng.com/blog/2012/04/javascript_programming_style.html 作者: 阮一峰 日期: 2012年4月27日 Douglas Crockford是Javascript权威,Json格式就是他的发明. 去年11月他有一个演讲(Youtube),谈到了好的Javascript编程风格是什么. 我非常推荐这个演讲,它不仅有助于学习Javascript,而且能让你心情舒畅,因为Crockford讲得很幽默,时不

Google Java编程风格指南--命名约定

命名约定5.1 对所有标识符都通用的规则标识符只能使用ASCII字母和数字,因此每个有效的标识符名称都能匹配正则表达式 \w+ .在Google其它编程语言风格中使用的特殊前缀或后缀,如 name_ ,  mName ,  s_name 和 kName ,在Java编程风格中都不再使用.5.2 标识符类型的规则5.2.1 包名包名全部小写,连续的单词只是简单地连接起来,不使用下划线.5.2.2 类名类名都以 UpperCamelCase 风格编写.类名通常是名词或名词短语,接口名称有时可能是形容

转:从《The C Programming Language》中学到的那些编程风格和设计思想

这儿有一篇写的很好的读后感:http://www.cnblogs.com/xkfz007/articles/2566424.html 读书不是目的,关键在于思考. 很早就在水木上看到有人推荐<The C Programming Language>这本书,一直都没看,开学一个月就专心拜读了一下,并认真做了课后习题.读来收获不少,主要有两点:一是加深了自己对一些基础知识的理 解和感悟:二是从中学到了一些不错的编程风格和设计思想,这些东西虽看起来不起眼但细细嚼来还是很值得学习的.下面就从四个方面做一

Java知多少(17)强调一下编程风格

讲完了Java的基础语法,大家就可以编写简单的程序代码了,这里有必要强调一下编程风格. 代码风格虽然不影响程序的运行,但对程序的可读性却非常重要.自己编写的程序要让别人看懂,首先在排版方面要非常注意. 其实每个人的编程风格.每个软件开发公司的编程风格都不一样.一个人编写的程序代码,就应该能让别人看懂,甚至是过了很长时间,自己也要看的懂,否则这个程序就成了一个死程序. 编程风格是指编程时的格式,让程序看上去就很有层次感.下面通过一些例子,说明编程风格的重要性: 1 public class mat

Pyhton 编程风格

博文概要:1.Python语句和语法2.Python标识符3.基本编程风格 一.Python语句和语法 1.可以从一行的任何地方开始2.续行 \: ''':闭合操作符,单一语句跨多行 3.代码组 .缩进相同的一组语句构成的一个代码块 .首行以关键字开始,如if.while 等,以冒号结束 .Python使用缩进来分隔代码组,同一代码组的代码行必须严格左对齐,否则会造成语法错误  .同一行放置多个语句 ;:以分号作为分隔符 .模块 每一个Python脚本文件都可以被当成是一个模块:模块的名称也是脚