C语言数据类型变量命名前缀 [建议]
在C语言编程中,使用前缀来标识变量类型是一种常见的命名约定,有助于提高代码可读性。以下是一些常用的数据类型前缀建议:
基本数据类型前缀
整型
i或n- int (例如:iCount,nItems)b- bool/boolean (例如:bIsReady)c- char (例如:cKey)by- unsigned char/byte (例如:byFlags)w- word/short (例如:wLength)dw- unsigned long/dword (例如:dwSize)
浮点型
f- float (例如:fPrice)d- double (例如:dDistance)lf- long double (较少使用)
指针类型
p- 指针 (例如:pBuffer,pNextNode)pp- 指针的指针 (例如:ppMatrix)
复合数据类型前缀
数组
a- 数组 (例如:aStudents,aResults)
字符串
sz- 以零结尾的字符串 (例如:szName)str- 字符串 (例如:strMessage)
结构体
st- 结构体 (例如:stEmployee)t- 类型定义 (例如:tNode)
枚举
e- 枚举 (例如:eColor)k- 常量/枚举值 (例如:kRed)
作用域前缀
g_- 全局变量 (例如:g_nCounter)m_- 类成员变量 (在C++中更常见)s_- 静态变量 (例如:s_nInstanceCount)
其他常见前缀
h- 句柄 (例如:hFile)u- 无符号整型 (例如:uLength)fn- 函数指针 (例如:fnCallback)
示例
int iAge; // 整型年龄
float fTemperature; // 浮点温度
char szName[50]; // 字符串名称
unsigned long dwSize; // 无符号长整型大小
int *pData; // 整型指针
struct student stTom; // 学生结构体
bool bIsValid; // 布尔值
注意:这些前缀并非强制标准,团队或项目内部应保持一致即可。匈牙利命名法(如iValue)和现代命名法(如valueInt)各有优缺点,选择适合团队的风格最重要。
