上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 56 下一页

2022年5月6日

摘要: 预处理指令是以#号开头的代码行,# 号必须是该行除了任何空白字符外的第一个字符。# 后是指令关键字,在关键字和 # 号之间允许存在任意个数的空白字符,整行语句构成了一条预处理指令,该指令将在编译器进行编译之前对源代码做某些转换。 下面是本章涉及到的部分预处理指令: 指令说明 # 空指令,无任何效果 阅读全文
posted @ 2022-05-06 19:22 朴素贝叶斯 阅读(206) 评论(0) 推荐(0) 编辑
摘要: #error 指令用于在编译期间产生错误信息,并阻止程序的编译,其形式如下: #error error_message 例如,我们的程序针对Linux编写,不保证兼容Windows,那么可以这样做: #ifdef WIN32 #error This programme cannot compile 阅读全文
posted @ 2022-05-06 18:18 朴素贝叶斯 阅读(325) 评论(0) 推荐(0) 编辑
摘要: 假如现在要开发一个C语言程序,让它输出红色的文字,并且要求跨平台,在 Windows 和 Linux 下都能运行,怎么办呢? 这个程序的难点在于,不同平台下控制文字颜色的代码不一样,我们必须要能够识别出不同的平台。 Windows 有专有的宏_WIN32,Linux 有专有的宏__linux__,以 阅读全文
posted @ 2022-05-06 16:53 朴素贝叶斯 阅读(1223) 评论(0) 推荐(0) 编辑
摘要: 顾名思义,预定义宏就是已经预先定义好的宏,我们可以直接使用,无需再重新定义。 ANSI C 规定了以下几个预定义宏,它们在各个编译器下都可以使用: __LINE__:当前调用__LINE__这个宏时,处于当前源文件中的第几行; __FILE__:表示当前源文件的名称; __DATE__:表示当前的编 阅读全文
posted @ 2022-05-06 16:23 朴素贝叶斯 阅读(366) 评论(0) 推荐(0) 编辑
摘要: 在宏定义中,有时还会用到#和##两个符号,它们能够对宏参数进行操作。 #用来将宏参数转换为字符串,也就是在宏参数的开头和末尾添加引号。例如有如下宏定义: #define STR(s) #s 那么: printf("%s", STR(www.baidu.com)); printf("%s", STR( 阅读全文
posted @ 2022-05-06 16:12 朴素贝叶斯 阅读(1053) 评论(0) 推荐(0) 编辑
摘要: 带参数的宏和函数很相似,但有本质上的区别: 宏展开仅仅是字符串的替换,不会对表达式进行计算;宏在编译之前就被处理掉了,它没有机会参与编译,也不会占用内存。 而函数是一段可以重复使用的代码,会被编译,会给它分配内存,每次调用函数,就是执行这块内存中的代码。 【示例①】用函数计算平方值。 #includ 阅读全文
posted @ 2022-05-06 13:35 朴素贝叶斯 阅读(179) 评论(0) 推荐(0) 编辑
摘要: C语言允许宏带有参数。在宏定义中的参数称为“形式参数”,在宏调用中的参数称为“实际参数”,这点和函数有些类似。 对带参数的宏,在展开过程中不仅要进行字符串替换,还要用实参去替换形参。(个人:也就是要进行两个替换,一个是用实参去替换形参,另一个进行宏展开) 带参宏定义的一般形式为: #define 宏 阅读全文
posted @ 2022-05-06 11:16 朴素贝叶斯 阅读(775) 评论(0) 推荐(0) 编辑
摘要: 宏(Macro)是预处理命令的一种,先看一个例子: #include <stdio.h> #define N 100 int main(){ int sum = 20 + N; printf("%d\n", sum); return 0; } 运行结果:120 该示例中的语句int sum = 20 阅读全文
posted @ 2022-05-06 10:11 朴素贝叶斯 阅读(541) 评论(0) 推荐(0) 编辑
摘要: #include叫做文件包含命令,用来引入对应的头文件(.h文件)。#include 也是C语言预处理命令的一种。 #include 的处理过程很简单,就是将头文件的内容插入到该命令所在的位置,从而把头文件和当前源文件连接成一个源文件,这与复制粘贴的效果相同。 #include 的用法有两种,如下所 阅读全文
posted @ 2022-05-06 09:45 朴素贝叶斯 阅读(2641) 评论(0) 推荐(0) 编辑
摘要: 前面各章中,已经多次使用过#include命令。使用库函数之前,应该用#include引入对应的头文件。这种以#号开头的命令称为预处理命令。 C语言源文件要经过编译、链接才能生成可执行程序: 编译(Compile)会将源文件(.c文件)转换为目标文件。 对于 VC/VS,目标文件后缀为.obj; 对 阅读全文
posted @ 2022-05-06 09:07 朴素贝叶斯 阅读(259) 评论(0) 推荐(0) 编辑
上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 56 下一页

导航