C
少点灵性
动手能力堪忧
展开
-
预处理器运算符
宏延续运算符(\) 一个宏通常写在一个单行上。但是如果宏太长,一个单行容纳不下,则使用宏延续运算符(\)。例如: #define message_for(a, b) \ printf(#a " and " #b ": We love you!\n") 字符串常量化运算符(#) 在宏定义中,当需要把一个宏的参数转换为字符串常量时,则使用字符串常量化运算符(#)。在宏转载 2017-02-17 13:07:16 · 393 阅读 · 0 评论 -
Makefile通用版
CPP_FILE:=$(wildcard *.cpp) CPP_TARGET:=${CPP_FILE:%.cpp=%} C_FILE:=$(wildcard *.c) C_TARGET:=${C_FILE:%.c=%} all: $(CPP_TARGET) $(C_TARGET) %:%.cpp g++ -o $@ $ %:%.c gcc -o $@ $ cl原创 2017-02-17 13:39:24 · 211 阅读 · 0 评论 -
可变参数
请注意,函数 func() 最后一个参数写成省略号,即三个点号(...),省略号之前的那个参数总是 int,代表了要传递的可变参数的总数。为了使用这个功能,您需要使用 stdarg.h 头文件,该文件提供了实现可变参数功能的函数和宏。具体步骤如下: 1.定义一个函数,最后一个参数为省略号,省略号前面的那个参数总是 int,表示了参数的个数。 2.在函数定义中创建一个 va_list 类转载 2017-02-17 14:49:34 · 197 阅读 · 0 评论