1 Star 0 Fork 0

LC.yulin/C.语言

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
test.3.19.c 3.43 KB
一键复制 编辑 原始数据 按行查看 历史
LC.yulin 提交于 2022-03-19 18:26 . C语言预处理
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//
//int main()
//{
// int arr[10] = { 0 };
// int i = 0;
// for (i = 0; i < 10; i++)
// {
// arr[i] = i;
// }
// for (i = 0; i < 10; i++)
// {
// printf("%d ", arr[i]);
// }
//
//
// return 0;
//}
//int main()
//{
//
// printf("%s\n", __FILE__);
// printf("%d\n", __LINE__);
// printf("%s\n", __DATE__);
// printf("%s\n", __TIME__);
// return 0;
//}
//int main()
//{
// //写日志文件
// int i = 0;
// int arr[10] = { 0 };
// FILE* pf = fopen("log.txt", "w");
// for (i = 0; i < 10; i++)
// {
// arr[i] = i;
// fprintf(pf,"file:%s line:%s date:%s time:%s i=%d\n",
// __FILE__, __LINE__, __DATE__, __TIME__, i);
// }
// fclose(pf);
// pf = NULL;
// for (i = 0; i < 10; i++)
// {
// printf("%d ", arr[i]);
// }
// return 0;
//}
//#define MAX 100;
//int main()
//{
// int a = MAX;
// printf("%d\n", MAX);
//
// return 0;
//}
//#define square(X) X*X
//int main()
//{
// int ret = square(5);
// printf("%d\n", ret);
// return 0;
//}
//#define square(X) X*X
//int main()
//{
//
// int ret = square(5 + 1);
// printf("%d\n", ret);
// return 0;
//}
//#define double(X) X+X
//int main()
//{
// int ret = 10 * double(5);
// printf("%d\n", ret);
// return 0;
//}
//#define PRINT(X) printf("the value of "#X" is %d\n",X)
//int main()
//{
// int a = 10;
// int b = 20;
// PRINT(a);
// //printf("the value of ""a"" is %d\n",a);
// PRINT(b);
// //printf("the value of ""b"" is %d\n",b);
// return 0;
//}
//#define CAT(X,Y) X##Y
//int main()
//{
//
// int Class2022 = 2019;
// printf("%d\n", CAT(Class, 2022));
// return 0;
//}
//#define MAX(X,Y) (X)>(Y)?(X):(Y)
//int main()
//{
// int a = 10;
// int b = 20;
// int max = MAX(a++,b++);
//
// printf("%d\n", max);
// printf("%d\n", a);
// printf("%d\n", b);
//
// return 0;
//}
//函数
//int Max(int x, int y)
//{
// return(x > y ? x : y);
//}
////宏
//#define MAX(X,Y) (X)>(Y)? X:Y
//int main()
//{
// int a = 10;
// int b = 20;
// int max = Max(a, b);
// printf("max=%d\n", max);
// max = MAX(a, b);
// printf("max=%d\n", max);
// return 0;
//}
//#define MALLOC(num,type) (type*)malloc(num*sizeof(type))
//int main()
//{
// int* p = MALLOC(10, int);
//
// return 0;
//}
//#define MAX 100
//int main()
//{
// printf("MAX=%d\n", MAX);
//#undef MAX
// printf("MAX=%d\n", MAX);
//
// return 0;
//}
//#define DEBUG
//int main()
//{
// int arr[10] = { 1,2,3,4,5,6,7,8,9,0 };
// int i = 0;
// for (i = 0; i < 10; i++)
// {
// arr[i] = 0;
//#ifdef DEBUG //如果定义了编译,否则不编译
// printf("%d ", arr[i]);
//#endif
// }
// return 0;
//}
//int main()
//{
// int arr[10] = { 1,2,3,4,5,6,7,8,9,0 };
// int i = 0;
// for (i = 0; i < 10; i++)
// {
// arr[i] = 0;
//#if 0 //0为假 则不打印
// printf("%d ", arr[i]);
//#endif
// }
// return 0;
//}
//int main()
//{
//#if 1==1
// printf("hehe\n");
//#elif 2==1
// printf("haha\n");
//#else
// printf("呵呵\n");
//#endif
//
// return 0;
//}
//#define DEBUG 0
//int main()
//{
//#ifdef DEBUG
// printf("hehe\n");
//#endif
// return 0;
//}
//#ifndef __TEST__H_
//#define __TEST__H_
//
//int ADD(int x,int y);
//
//#endif
//#pragma once
//int ADD(int x, int y);
//
#include<stddef.h>
struct S
{
char c1;
int a;
char c2;
};
#define OFFSETOF(struct_name,member_name) (int) &(((struct_name*)0)->member_name)
//解释:首先将0强转化结构体指针,找到地址,然后从0地址出找到成员,然后&,
//因为OFFSETOF返回值是整数,所以将地址强转化为(int);
int main()
{
printf("%d\n", OFFSETOF(struct S, c1));
printf("%d\n", OFFSETOF(struct S, a));
printf("%d\n", OFFSETOF(struct S, c2));
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C
1
https://gitee.com/lc-yulin/c-language.git
git@gitee.com:lc-yulin/c-language.git
lc-yulin
c-language
C.语言
master

搜索帮助