C语言编程规范

宏:大写+下划线
函数名:全小写+下划线
变量名:全小写+下划线

 

//驼峰命名法
宏:大写+下划线
函数名:第一个单词全小写,后面单词第一个字母大写
变量名:第一个单词全小写,后面单词第一个字母大写,首字母有含义

 

 

 

 

/**
  ******************************************************************************
  * @file    test.h
  * @author  xxx
  * @version V 1.0.0
  * @date    2020-01-01
  * @brief   This file contains all the functions prototypes for the USART firmware library.  
  ******************************************************************************
  * @attention
  *
  * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
  * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
  * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
  * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
  * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
  * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
  *
  * <h2><center>&copy; COPYRIGHT 2011 STMicroelectronics</center></h2>
  ******************************************************************************
  */


#ifndef TEST_H    //防止头文件重复引用
#define TEST_H


#include <stdio.h>    //引用标准库的头文件

#include "xxxxx.h"    //引用非标准库的头文件


void Functionl(void);    //全局函数声明



#endif

 

 

 

 

/**
  ******************************************************************************
  * @file    test.c
  * @author  xxx
  * @version V 1.0.0
  * @date    2020-01-01
  * @brief   This file contains all the functions prototypes for the USART firmware library.    
  ******************************************************************************
  * @attention
  *
  * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
  * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
  * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
  * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
  * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
  * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
  *
  * <h2><center>&copy; COPYRIGHT 2011 STMicroelectronics</center></h2>
  ******************************************************************************
  */


//行注释用//,段注释用/*   */

#include "test.c"    //引用头文件

void Functionl(void)
{
    int a = 10;    //定义变量的同时尽可能初始化
    int b = 10;
    int c = 10;
    
    
    int *p = NULL;    //*和&应尽量靠近变量,而不是靠近数据类型
    int* x,y;        //此处y容易被误解为指针,应改成下面写法
    int *x,y;
    
    
    //空行分割段落
    if (a == b)    //if、for、while等关键字后面尽量都留一个空格在跟"("
    {
        
    }
    
    for (int i=0;i<10;i++)//短循环放外层
    {
        for (int j=0;j<100;j++)//长循环放内层
        {
            
        }
    }
    
    if (a > 10 && 
        b > 10 && 
        c > 10)            //长行拆分
    {
            
    }
    
    if (10 == a)//在变量与数据作比较时,尽量将数据放在前面,变量放在后面,防止写成a=10
    {
        
    }
}

//空行分割段落
void Function2(void)
{
    int a = 10;
    int b = 10;
    int c = 10;
    
    
}




//宏、变量、函数等命名


//if语句bool变量用真假判断,数值用== != >= <=比较,指针用 == !=与NULL比较
//

 

posted @ 2021-09-23 17:06  孤情剑客  阅读(307)  评论(0)    收藏  举报