c语言中编译开始会对#define,#include等内容做预处理,可以用#define写一些简单函数,方便使用
#include <stdio.h>
#include <stdlib.h>
#define MAX(A, B) ((A) >= (B) ? (A) : (B))
int main(){
printf("%d\n", MAX(1, 2));
}
Heap与Stack的差别:
heap是堆区,stack是栈区,stack区的空间由系统自动分配和释放,比如int a = 1;是由系统自动分配,而heap区域是由为用户提供,需要用户手动分配和释放如malloc和free,heap的空间是要比stack的空间大
函数指针和指针函数:
两者书写区别在于指针函数是返回一个指针:
int* a(int b, int c)
返回一个int*指针
函数指针是指向一个函数:
int (*a)(int b, int c)
两者的区别在于括号的位置不同