c语言判断结构体是否为空
时间: 2023-08-16 19:04:34 浏览: 1842
c语言的结构体
5星 · 资源好评率100%
在C语言中,判断结构体是否为空可以通过判断结构体中第一个成员的地址是否等于结构体本身的地址来实现。如果相等,则说明结构体为空。
示例代码如下:
```c
#include <stdio.h>
#include <stdlib.h>
struct MyStruct {
int i;
char c;
};
int main() {
struct MyStruct s;
if (&s == (struct MyStruct*)(&s.i)) {
printf("Struct is empty\n");
} else {
printf("Struct is not empty\n");
}
return 0;
}
```
该代码定义了一个名为`MyStruct`的结构体,并声明了一个`MyStruct`类型的变量`s`。然后,通过比较`s`的地址和`s.i`的地址来判断结构体是否为空。如果相等,则输出`Struct is empty`,否则输出`Struct is not empty`。
阅读全文