zoukankan      html  css  js  c++  java
  • C语言命名规则

    C语言命名规则  

    比较著名的命名规则当推Microsoft  公司的“匈牙利”法,该命名规则的主要思想是“在变量和函数名中加入前缀以增进人们对程序的理解”。例如所有的字符变量均以ch 为前缀,若是指针变量则追加前缀p。如果一个变量由ppch 开头,则表明它是指向字符指针的指针。

        “匈牙利”法最大的缺点是烦琐,例如

        int    i,  j,   k;

        float  x,  y,  z;

    倘若采用“匈牙利”命名规则,则应当写成

        int    iI,   iJ,  ik;  // 前缀 表示int类型

        float  fX,  fY,   fZ;  // 前缀 表示float 类型

    如此烦琐的程序会让绝大多数程序员无法忍受。

    据考察,没有一种命名规则可以让所有的程序员赞同,程序设计教科书一般都不指定命名规则。命名规则对软件产品而言并不是“成败悠关”的事,我们不要化太多精力试图发明世界上最好的命名规则,而应当制定一种令大多数项目成员满意的命名规则,并在项目中贯彻实施。

     

    关于C语言变量和函数命名总结以下几点,大家可以讨论交流一下:

     

    1、变量名长度应当符合“min-length && max-information”原则。

    2、命名规则尽量与所采用的操作系统或开发工具的风格保持一致。

    3、不能靠大小写来区分不通变量。

    4、名词变量用“名词”或者“形容词+名词”的形式,动词用动宾形式。

    5、如果需要有特定意义的,应该在变量命名是有所体现,如反义等;但是不推荐使用数字标记,如name1,name2;

    6、关于大小写规则。变量第一个为小写,但第二个词为大写开始,如:newName;而函数名两个都为大写开头,如:GetName();

    7、常量都为大写,同时两个词间用_分开。

    8、静态变量以s_开头,全局变量以glb_开头。

     

    • bBusy 布尔型
    • cApples :项目计数
    • dwLightYears :双(系统)
    • fBusy 布尔型(标记)
    • nSize 整型(系统)或计数(应用程序)
    • iSize 整型(系统)或索引(应用程序)
    • fpPrice浮点数
    • dbPi 双精度浮点数(系统)
    • pFoo 指针
    • rgStudents :数组或范围
    • szLastName :零结束字符串
    • u32Identifier :无符号32位整型(系统)
    • stTime :时钟结构
    • fnFunction :函数名

    对于指针和数组来说,它们实际上并不是数据类型,因此通常在助记符后面跟着实际元素的类型。

    • pszOwner :指向零结束字符串的指针
    • rgfpBalances 浮点值的数组

    由于匈牙利命名法可以被应用在任何程序设计语言和环境中,因此被微软广泛用在C语言中,特别是在Microsoft Windows里。由此一来,许多常见的匈牙利命名法的结构都和Windows紧密相关:

    • hwndFoo :窗口句柄
    • lpszBar :指向零结束字符串的长指针

    这种命名法又是在C++中被扩展而包含变量的作用域,由一个下划线隔开:

    • g_nWheels :全局命名空间的成员,整型
    • m_nWheels :结构体/类成员,整型

     

    来自:http://blog.csdn.net/bobocheng1231/archive/2008/03/28/2225051.aspx

  • 相关阅读:
    gTest&gMock learning
    机器学习 delay learning
    c++ learning
    2017 湘潭邀请赛&JSCPC G&J
    mapreduce&GFS&bigtable learning
    golang learning
    高斩仙的北京历险记
    python learning
    Codeforces Round #448 (Div. 2) B
    python之callable
  • 原文地址:https://www.cnblogs.com/songfeixiang/p/3733806.html
Copyright © 2011-2022 走看看