结构体的简介应用(typedef)
typedef struct{
double x,y;
}Point; 这种定义结构体的格式可以使得结构体的创建如in,double一样
double dist(Point a, Point b){ 正因为结构体的特殊定义方式这里可以直接这样定义参数
return hypot(a.x-b.x,a.y-b.y); //hypot函数》平方差
}
数组的地址变换
int a[] = {1,2,3,4,5};
printf("%d",a+1); //此时函数输出的是a[1]的地址
//数组传入函数时需同时传入数组的长度,
//不能通过sizepf()获得
地址运算
无论什么类型的数组,相减值与类型空间大小无关,至于数组间距相关
int a[] = {1,2,3,4,5,6,7};
char b[] = "abcd";
double c[] = {1.1,2.2,3.3,4.4};
printf("a[0]:%d ",&a[0]);
printf("a[1]:%d ",&a[1]);
printf("%d\n",&a[1]-&a[0]);
printf("b[0]:%d ",&b[0]);
printf("b[1]:%d ",&b[1]);
printf("%d\n",&b[1]-&b[0]);
printf("c[0]:%d ",&c[0]);
printf("c[1]:%d ",&c[1]);
printf("%d\n",&c[1]-&c[0]);
运算结果