引入一个重要的概念 "struct"
(译为中文:结构体)
可用作设出比较复杂的一些变量类型
语法 : struct point name { int x; int y; int z;}
point 和 name是任意命名的名字,含义是,声明一个变量类型为struct point
(后续struct可省略),名为name变量,且point类型变量的结构为三个int型变量组合而成的复合变量。
大致意思就是,有了这条声明之后 p x = ..... 就类似于 int int int x =....(假设)
且这个声明可以是全局变量类型声明,也可以是局部变量类型声明,
本人建议声明成全局变量类型,更加方便。
观察下列代码:
" -> " 为指向符号,通过图中应该也好理解,p这个字母会调用声明的s变量类型,后面的->会表明,这是p类型变量中的x那个变量。
这个代码,你会发现,其中声明了类型为p 的名为s的数组,且进行了一些赋值,但是但是但是,重点来了,输出这个数组中的值的话,也仅仅只能输出数组的第一个元素组位。如果通过强行手段输出别的元素位,也许可以,但很麻烦,此时我们便想到指针与数组的联系,通过指针的增减性,来改变指向的是数组中的哪个元素,说干就干,请看下图:
以上几个图,均体现出,指针与数组的密切联系,而且体现出,指针的优点。
指针比较
关于strlen的用法。
strcmp(a,b); 比较两个字符数组内的ascl值的和的大小,近似字符串长度大小。
大小关系分别对应返回值1,0,-1 ;