CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  新手乐园

有关头文件里的“_”和“__”的问题

楼主franson12()2006-07-03 13:50:37 在 C/C++ / 新手乐园 提问

谁能帮帮我,给我解释一下这下划线的作用和意义??我一直不明白,只知道用,还有比如c库函数里的time.h里unsigned   __cdecl   _getsystime(struct   tm   *);   等等,小弟在此先谢谢了。 问题点数:20、回复次数:9Top

1 楼UPCC(杂食动物)回复于 2006-07-03 14:06:35 得分 0

“__”表示文件定义的一些宏什么的?  
  “_"表示系统API函数?  
  其实具体区分不大情况(sorry)  
   
  帮你顶!Top

2 楼franson12()回复于 2006-07-03 14:13:19 得分 0

这个。。。好象还是不明白Top

3 楼jixingzhong(瞌睡虫·星辰)回复于 2006-07-03 14:51:39 得分 0

__表示是系统(或者是编译环境)定义的,  
  _   表示是自己定义的,在编译后生成的,  
  (编译后的函数、变量的名字都会变化,如增加下划线等)。Top

4 楼happytang(一只叫苏格拉底的猪)回复于 2006-07-03 22:06:30 得分 0

__是为了编译器解释,告诉编译器产生什么样的汇编代码  
  在默认情况下,采用__cdecl方式,因此可以省略.  
   
  __cdecl是C/C++和MFC程序默认使用的调用约定,也可以在函数声明时加上__cdecl关键字来手工指定。采用__cdecl约定时,函数参数按照从右到左的顺序入栈,并且由调用函数者把参数弹出栈以清理堆栈。因此,实现可变参数的函数只能使用该调用约定。  
   
  _是正常的变量名,自己定义的可以以字母或者_开始Top

5 楼kzzk(毅)回复于 2006-07-03 23:48:21 得分 0

其实用什么标号全凭习惯   你也可以用   也可以不用  
  上次差点被     _SYSTEMTIME搞翻了Top

6 楼franson12()回复于 2006-07-04 09:15:49 得分 0

谢谢各位大哥帮忙,那我什么时候该用什么时候不该用"__,_"继续请教,能不能象kzzk(毅)   说的凭自己习惯来用?Top

7 楼Kenmark(fenix)回复于 2006-07-04 16:48:43 得分 0

接口函数最好不要用_很基本的函数或是宏可以用_,一般private的基本的函数((不带有数据安全检查的最好用_标记一下,很复杂的基础宏用__标记一下Top

8 楼Kenmark(fenix)回复于 2006-07-04 16:49:55 得分 0

一般做大的工程不能随着自己的性子来,没有良好的编码习惯怎么可以,至少自己要有个编码的习惯和标准嘛!参考写的精简的人家的代码和人家的编码风格对你会有好处Top

9 楼cppstl()回复于 2006-07-06 11:13:37 得分 0

在C/C++中以两个下划线开头以及以一个下划线后跟一个大写字母开头的标识符是系统保留的,定义自已的标识符时应避免这两种情况.Top

相关问题

关键词

得分解答快速导航

  • 帖主:franson12

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo