69,368
社区成员
发帖
与我相关
我的任务
分享
struct date {
char day[10];
char res[2]; //这里多余了空余2个字节的!内存字节对齐!
//可以google下,很基础的知识,内存对齐可以提高访问效率
int month;
int year;
};
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
struct date {
char day[10];
int month;
int year;
};
int main() {
struct date *object = malloc(sizeof(struct date));
strcpy(object->day, "Good day");
object->month = 6;
object->year = 2013;
printf("%d,%d,%d\n", sizeof(object->day), sizeof(object->month), sizeof(object->year));
printf("%d\n", sizeof(struct date));
FILE *file = fopen("output", "wb");
if (file != NULL) {
fwrite(object, sizeof(struct date), 1, file);
fclose(file);
}
return 0;
}