C语言入门简明教程
0x09 一些小知识点
写在开头
这是C语言入门的最后一章啦~ 这章我们将学习一些小知识点~
宏定义:#define
使用#define可以方便地使用一些常量或定义一些常用函数:
#define PI 3.14
#define MAX(a,b) ((a)>(b)?(a):(b))
//第一个为定义PI常量,第二个为定义MAX的快捷计算的宏函数
在宏中可以使用#的前缀来代表一个字符串,使用##前缀来连接两个部分
#define SAY(s) "SAY:" #s
//输出:SAY:加上s的内容
#include
这个之前讲过了,略
可变参数宏…和__VA_ARGS__
看个例子就行,以printf为例:
#define P(...) printf(__VA_ARGS__)
//这样如果有多个参数则替换的__VA_ARGS__将变为这些参数
注意,…仅可用作宏替换中最后替换的可变参数列表的内容
预处理指令 #if, #elif, #else, #endif, #ifdef, #ifndef, #undef, #error, #pragma
这些在入门阶段不怎么用得着,略
extern:多文件时声明外部变量
假设在一个引用的a.c中已经定义了int变量var1,则若b.c引用了a.c,需要用var1则需要extern int var1表示是从b.c的外部已经创建好的变量,对于函数也可以如此。
内联函数
内联函数提供更快的函数调用,该函数仅能在创建它的文件中使用,在普通的函数前面加上inline即可成为内联函数。
特别地,复杂的函数就算转成内联函数也不会快多少,所以最好是将一些短的简单的函数变成内联函数。
C语言的一大堆函数库
合理地使用函数库可以避免重造轮子和过于复杂的程序结构,这里给出常用的:
网页链接:C语言标准库
总结
就到这啦~ 祝大家七夕快乐~~