c 深度剖析 4

1 预处理

1#define

1.不能用 #define 定义注释,因为注释先于预处理被处理。

2 .宏定义表达式

1,注意展开后结合顺序,尽量多加括号

2,常量定义时注意是否溢出

1
#define SEX_YEAR (60*60*24*365)UL

3,注意空格

2 #pragma

#pragma message参数,在编译信息窗口输出信息

#pragma code_seg 设置程序中函数代码存放的代码段

#pragma pack设置字对齐的方式,

3指针变量传递给函数

1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
 
void func(int a[])
{
a[1]=5;
}
void  main()
{
int a[3]={1,2,3};
func(a);
printf("%d \n",a[1]);
}

实际上 main函数中传的是a ,a指向数组的指针。func中是a指针的拷贝,同样指向数组,指针变量本身为值传递,指针指向的值

为地址传递。

上一篇:如何使用jQuery从字符串中删除最后一个字符


下一篇:MySQL数据库sql语句的一些简单优化