内置宏和预编译指令, 在代码调试.单元测试.跨平台代码中经常会用到.这里记录一下. 1. 内置宏 (文件名,当前行号,当前日期,当前时间,当前执行方法名) __FILE____LINE____DATE____TIME__ __FUNCTION__ 2.预编译指令 可以防止头文件被多次引用 可以方便解决代码跨平台编译问题 可以根据自定义变量灵活执行程序 等等,许多好处 效果可以看代码实例: test.h #ifndef __TEST_H #define __TEST_H #include <ios…
预处理器指令指导编译器在实际编译开始之前对信息进行预处理. 所有的预处理器指令都是以 # 开始.且在一行上,只有空白字符可以出现在预处理器指令之前.预处理器指令不是语句,所以它们不以分号(;)结束. C# 编译器没有一个单独的预处理器,但是,指令被处理时就像是有一个单独的预处理器一样.在 C# 中,预处理器指令用于在条件编译中起作用.与 C 和 C++ 不同的是,它们不是用来创建宏.一个预处理器指令必须是该行上的唯一指令. C# 预处理器指令列表 预处理器指令 描述 #define 它用于定义一…
C# 预处理器指令 预处理器指令指导编译器在实际编译开始之前对信息进行预处理. 所有的预处理器指令都是以 # 开始.且在一行上,只有空白字符可以出现在预处理器指令之前.预处理器指令不是语句,所以它们不以分号(;)结束. C# 编译器没有一个单独的预处理器,但是,指令被处理时就像是有一个单独的预处理器一样.在 C# 中,预处理器指令用于在条件编译中起作用.与 C 和 C++ 不同指令不用,它们不是用来创建宏.一个预处理器指令必须是该行上的唯一指令. C# 预处理器指令列表 下表列出了 C# 中可用…
文件读写 上一章我们讲解了 C 语言处理的标准输入和输出设备.本章我们将介绍 C 程序员如何创建.打开.关闭文本文件或二进制文件. 一个文件,无论它是文本文件还是二进制文件,都是代表了一系列的字节.C 语言不仅提供了访问顶层的函数,也提供了底层(OS)调用来处理存储设备上的文件.本章将讲解文件管理的重要调用. 打开文件 您可以使用 fopen( ) 函数来创建一个新的文件或者打开一个已有的文件,这个调用会初始化类型 FILE 的一个对象,类型 FILE 包含了所有用来控制流的必要的信息.下面是这…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#region(C# 参考) 1.返回顶部 1. #region(C# 参考) 2015/07/20 利用 #region,可以指定在使用 Visual Studio Code 编辑器的大纲功能时可展开或折叠的代码块. 在较长的代码文件中,能够折叠或隐藏一个或多个区域会十分便利,这样,可将精力集中于当前处理的文件部分. 下面的示例演示如何定义区域: C#复制 #region MyClass definition public…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#line(C# 参考) 1.返回顶部 1. #line(C# 参考) 2015/07/20 借助 #line,可修改编译器的行号及(可选)用于错误和警告的文件名输出. 以下示例演示如何报告与行号相关联的两个警告. #line 200 指令将下一行的行号强制设为 200(尽管默认值为 #6):在执行下一个 #line 指令前,文件名都会报告为“特殊”. #line default 指令将行号恢复至默认行号,这会对上一指令重新…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#error(C# 参考) 1.返回顶部 1. #error(C# 参考) 2015/07/20 #error 可从代码中的特定位置生成 CS1029 用户定义的错误. 例如: C#复制 #error Deprecated code in this method. 备注 #error 常用于条件指令中. 还可使用 #warning 生成用户定义警告. 示例 C#复制 // preprocessor_error.cs // C…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#warning(C# 参考) 1.返回顶部 1. #warning(C# 参考) 2015/07/20 #warning 允许你从代码中的特定位置生成 CS1030 第一级编译器警告. 例如: C#复制 #warning Deprecated code in this method. 备注 #warning 常用于条件指令中. 还可使用 #error 生成用户定义错误. 示例 C#复制 // preprocessor_wa…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#undef(C# 参考) 1.返回顶部 1. #undef(C# 参考) 2018/06/30 #undef 允许你定义一个符号,这样一来,通过将该符号用作 #if 指令中的表达式,表达式将计算为 false. 可使用 #define 指令或 -define 编译器选项来定义符号. 文件中必须先出现 #undef 指令,才能使用任何非指令的语句. 示例 C#复制 // preprocessor_undef.cs // co…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#define(C# 参考) 1.返回顶部 1. #define(C# 参考) 2018/06/30 使用 #define 来定义符号. 将符号用作传递给 #if 指令的表达式时,该表达式的计算结果为 true,如以下示例所示: C#复制 #define DEBUG 备注 备注 #define 指令不能用于声明常量值,这与 C 和 C++ 中的通常做法一样. C# 中的常量最好定义为类或结构的静态成员. 如果具有多个此类常量…