部分c高级笔记.docxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
#include直接按标准目录有哪些信誉好的足球投注网站“”先在当前目录有哪些信誉好的足球投注网站,再有哪些信誉好的足球投注网站标准目录处理过程:预编译时,用被包含文件的内容取代该预处理命令,再对“包含”后的文件作一个源文件编译#if、#else#elif 、#endif条件编译指令中最常用的或许是#if,#else,#elif和#endif #if的一般形式是:#if constant-expression?Statement sequence#endif#endif标记#if块的结束例子: #ifdef COMPUTER_A#define INTEGER_SIZE 16 #else # define INTEGER_SIZE 32 #endif#else指令的作用与C语言的else相似,#if指令失败时它可以作为备选指令#else既是标记#if块的结束,也标记#else块的开始每个#if只能写一个#endif匹配#ifdef --如果已定义#ifdef的一般形式如下:#ifdef 标识符程序段1#else程序段2#endif当所指定的标识符已经被#define命令定义过,则在程序编译阶段只编译程序段1,否则编译程序段2。#ifndef --如果未定义#ifdef的一般形式如下:#ifndef 标识符程序段1#else程序段2#endif作用是当所指定的标识符未被#define命令定义过,则在程序编译阶段只编译程序段1,否则编译程序段2。它只是第一行与第一种形式不同。这种形式与第一种形式的作用相反#ifndef #if --如果已定义#if 的一般形式如下:#if 常量表达式程序段1#else程序段2#endif如常量表达式的值为真(非0),则对程序段1 进行编译,否则对程序段2进行编译#ifdef 和 #if defined 的区别在于,后者可以组成复杂的预编译条件,比如#if defined (AAA) defined (BBB)xxxxxxxxx#endif#if defined (AAA) || VERSION 12xxxxxxxxx#endif而#ifdef 就不能用上面的用法,也就是说,当你要判断单个宏是否定义时#ifdef 和 #if defined 效果是一样的,但是当你要判断复杂的条件时,只能用 #if#error 使用defined #line #pragma ?#和## 预宏定义#error指令强制编译程序停止编译,主要用于程序调试#error指令的一般形式是#error error-message注意:宏串error-message不用双引号包围?可以自定义错误内容defined确定是否定义宏名字的方法defined操作符的一般形式如defined macro-name define与#ifdef:#if defined MY 或#ifdef MY感叹号”!”来反转相应的条件?#if !defined DEBUG? Printf(“Final Version!\n”);#endif__FILE__C语言中的__FILE__用以指示本行语句所在源文件的文件名,举例如下(test.c):#include stdio.hint main(){printf(%s\n,__FILE__);}在gcc编译生成a.out,执行后输出结果为:test.c在windows的vc6.0下编译执行结果为:c:\documents and settings\administrator\桌面\test.c__LINE__C语言中的__LINE__用以指示本行语句在源文件中的位置信息,举例如下:#include stdio.hmain(){ printf(%d\n,__LINE__);printf(%d\n,__LINE__);printf(%d\n,__LINE__);};该程序在linux用gcc编译,在windows的vc6.0下编译都可以通过,执行结果都为:789还可以通过语句#line来重新设定__LINE__的值,举例如下:#include stdio.h#line 200? //指定下一行的__LINE__为200main(){ printf(%d\n,__LINE__);printf(%d\n,__LINE__);printf(%d\n,__LINE__);};编译执行后输出结果为:202203204另外gcc还支持__func__,它指示所在的函数,但是这个关键字不被windows下的vc6.0支持,举例如下:#include stdio.hvoid main(){printf(this is print by function %s\n,__func__);}其编译后输出结果为this is print by f

文档评论(0)

KOtCDBGrkr + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档