vc中 windows 常用的数据类型

匈牙利命名法  
  Microsoft采用匈牙利命名法来命名Windows   API函数和变量。匈牙利命名法是由Microsoft的著名开发人员、Excel的主要设计者查尔斯·西蒙尼在他的博士论文中提出来的,由于西蒙尼的国籍是匈牙利,所以这种命名法叫匈牙利命名法。  
  匈牙利命名法为C标识符的命名定义了一种非常标准化的方式,这种命名方式是以两条规则为基础的:  
  1、标识符的名字以一个或者多个小写字母开头,用这些字母来指定数据类型。下表列出了常用的数据类型的标准前缀:  
  在Windows里定义数据类型的一些标准前缀  
  前缀 数据类型  
  c 字符(char)  
  s 短整数(short)  
  cb 用于定义对象(一般为一个结构)尺寸的整数  
  n 整数(integer)  
  sz 以’/0’结尾的字符串  
  b 字节  
  i int(整数)  
  x 短整数(坐标x)  
  y 短整数(坐标y)  
  f BOOL  
  w 字(WORD,无符号短整数)  
  l 长整数(long)  
  h HANDLE(无符号int)  
  m_ 类成员变量  
  fn 函数(function)  
  dw 双字(DWORD,无符号长整数)  
     
  2、在标识符内,前缀以后就是一个或者多个第一个字母大写的单词,这些单词清楚地指出了源代码内那个对象的用途。比如,m_szStudentName表示一个学生名字的类成员变量,数据类型是字符串型。  
   
  3、全程函数以“Afx”为前缀,所有全程变量都是以“afx”为前缀,宏不带任何特别前缀,但是全部大写。常见的全局函数和宏有:AfxGetApp,AfxGetMainWnd,AfxMessageBox,DEBUG_NEW等。
 
变量命名  
   
  命名必须具有一定的实际意义,形式为xAbcFgh,x由变量类型确定,Abc、Fgh表示连续意  
  义字符串,如果连续意义字符串仅两个,可都大写.如OK.  
   
  具体例程:  
   
  BOOL类型                                     bEnable;  
   
   
   
  ch             *                             char                                                         chText  
  c             *                             类对象                                                     cMain(对象实例)  
  h             *                             Handle(句柄)                                     hWnd  
  i             *                             int  
  n             *                             无符号整型  
  p             *                             指针  
  sz,str     *                             字符串  
  w                                             WORD  
  x,y                                         坐标  
   
  Char或者TCHAR类型                 与Windows   API有直接联系的用szAppName[10]形式否则用  
  FileName[10]形式,单个字符也可用小写字母表示;  
   
  Int类型                 nCmdShow;  
   
  LONG类型                 lParam;  
   
  UINT类型                  uNotify;  
   
  DWORD类型                  dwStart;  
   
  PSTR类型                    pszTip;  
   
  LPSTR类                     lpCmdLine  
   
  LPTSTR类型                   lpszClassName;  
   
  LPVOID类型                  lpReserved  
   
  WPARAM类型                    wParam,  
   
  LPARAM类型                   lParam  
   
  HWND类型                     hDlg;  
   
  HDC类型                       hDC;  
   
  HINSTANCE类型                 hInstance  
   
  HANDLE类型                   hInstance,  
   
  HICON类型                     hIcon;  
   
  int                          iTmp  
   
  float                         fTmp  
   
  DWORD                        dw*  
   
  String   ,   AnsiString            str   *  
  m_                                类成员变量
  m_nVal,                        m_bFlag  
  g_                                全局变量
  g_nMsg,                      g_bFlag  
   
  局部变量中可采用如下几个通用变量:nTemp,nResult,I,J(一般用于循环变量)。  
   
  其他资源句柄同上  
   
  .3常量命名和宏定义  
   
      常量和宏定义必须具有一定的实际意义;  
   
  常量和宏定义在#include和函数定义之间;  
   
  常量和宏定义必须全部以大写字母来撰写,中间可根据意义的连续性用下划线连接,每一  
  条定义的右侧必须有一简单的注释,说明其作用;  
   
  资源名字定义格式:  
   
  菜单:IDM_XX或者CM_XX  
   
  位图:IDB_XX  
   
  对话框:IDD_XX  
   
  字符串:IDS_XX  
   
  DLGINIT:DIALOG_XX  
   
      ICON:IDR_XX  
   
  .4函数命名  
   
  函数原型说明包括引用外来函数及内部函数,外部引用必须在右侧注明函数来源:   模  
  块名及文件名,   如是内部函数,只要注释其定义文件名;  
   
  第一个字母必须使用大写字母,要求用大小写字母组合规范函数命名,必要时可用下划线  
  间隔,示例如下:  
   
  void   UpdateDB_Tfgd  (TRACK_NAME);    //Module  Name :r01/sdw.c  
   
  void    PrintTrackData   (TRACK_NAME); //Module   Name   :r04/tern.c  
   
  void    ImportantPoint  (void);    //Module    Name   :r01/sdw.c  
   
  void    ShowChar  (int  , int  , chtype);  //Local     Module  
   
  void    ScrollUp_V    (int   ,  int)         //Local     Module  
   
  .5结构体命名  
   
  结构体类型命名必须全部用大写字母,原则上前面以下划线开始;结构体变量命名必须用  
  大小写字母组合,第一个字母必须使用大写字母,必要时可用下划线间隔。对于私有数  
  据区,必须注明其所属的进程。全局数据定义只需注意其用途。  
   
                                          示例如下:  
   
                                          typedef   struct  
   
                                          {  
   
                                                             char             szProductName[20];  
   
                                                          char              szAuthor[20];  
   
   
                                                          char                szReleaseDate[16];  
   
                                                          char                  szVersion[10];  
   
                                                          unsigned   long        MaxTables;  
   
                                                          unsigned   long         UsedTables;  
   
  }DBS_DATABASE;  
   
  DBS_DATABASE   GdataBase; 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值