1.使用宏定义定义一个函数 2.外部变量声明,新建一个Ied.c,声明一个变量,在main函数里边调用 3使用条件编译完成两个函数定义 4结构体定义,定义一个结构体student,成员包括学号、姓名、身高、性别。
时间: 2024-09-10 09:15:45 浏览: 40
1. 使用宏定义定义一个函数
宏定义通常用于定义常量或者函数式的宏,但也可以用于模拟简单的函数定义。例如,我们可以定义一个宏来计算两个数的和:
```c
#define SUM(a, b) ((a) + (b))
```
这里使用括号是为了确保宏展开时的操作数不会受到运算符优先级的影响。
2. 外部变量声明,新建一个`Ied.c`,声明一个变量,在`main`函数里边调用
首先,在`Ied.c`文件中声明一个外部变量:
```c
// Ied.c
int externalVar = 10; // 声明并初始化一个外部变量
```
然后在另一个文件中,比如`main.c`,你可以声明这个外部变量,并在`main`函数中使用它:
```c
// main.c
extern int externalVar; // 声明外部变量,表明其定义在其他文件中
int main() {
// 调用外部变量
printf("%d\n", externalVar);
return 0;
}
```
记得要确保`Ied.c`和`main.c`在同一个编译单元中被编译,或者在链接时能够正确找到`Ied.c`中定义的变量。
3. 使用条件编译完成两个函数定义
条件编译通常用于根据预定义的宏或者编译器指令来包含或排除代码块。以下是一个使用条件编译定义两个不同函数的示例:
```c
// 如果定义了MY_CONDITION则定义functionA,否则定义functionB
#ifdef MY_CONDITION
#define FUNCTION A
#else
#define FUNCTION B
#endif
// 使用条件编译后的宏定义函数
void FUNCTION() {
// 函数实现
}
```
在这个例子中,根据`MY_CONDITION`是否被定义,将决定编译器包含`functionA`的定义还是`functionB`的定义。
4. 结构体定义,定义一个结构体`student`,成员包括学号、姓名、身高、性别。
下面是如何定义一个名为`student`的结构体的示例:
```c
// 定义一个student结构体
struct student {
int id; // 学号
char name[50]; // 姓名
float height; // 身高
char gender; // 性别,'M'表示男性,'F'表示女性
};
```
这里,`id`是整型,`name`是一个字符数组(字符串),`height`是浮点型,`gender`是字符型,用来存储性别标识。
阅读全文