C语言注意事项(一)

一、关于typedef与#define的相似之处

例如:typedef int COUNT;
           #define COUNT int

作用:都是用COUNT代表int,但事实上,二者是不同的。#define是在预编译时处理的,只能作简单的字符串替换,而typedef是在编译时处理的,并不是作简单的字符串替换,而是声明一个类型。

二、有关整型的数据类型

数据类型 含义
int p; 定义整型变量p
int *p;  p为指向整型数据的指针变量
int p[n];  定义整型数组p,它有n个元素
int *p[n];  定义指针数组p,它由n个指向整型数据的指针元素组成
int (*p)[n];  p为指向含n个元素的一维数组的指针变量
int p(); p为带回整型函数值的函数
int *p(); p为带回一个指针的函数,该指针指向整型数据
int (*p)();  p为指向函数的指针,该函数返回一个整型值
int **p;  p是一个指针变量,它指向一个指向整型数据的指针变量


三、有关二维数组表达式的含义

表达式 含义
二维数组名,指向一维数组a[0],即0行首地址
a[0]、*(a+0)、*a  0行0列元素地址
a+1、&a[1]  1行首地址
a[1]、*(a+1)+2、&a[1][2]  1行2列元素a[1][2]的地址
*(a[1]+2)、*(*(a+1)+2)、a[1][2]  1行2列元素a[1][2]的值

猜你喜欢

转载自www.cnblogs.com/xintong2021/p/12746605.html
今日推荐