您的位置:首页 > 编程语言 > C语言/C++

C语言知识点及细节

2017-11-16 16:13 148 查看
1.二维数组每一个元素都返回一个指针 

指针数组表示方法:

&a:

a:数组第0行的首地址

a[0],*(a+0),*a:数组第0行0列元素的地址

a+1,&a[1]:数组第1行的首地址

a[1],*(a+1):数组第1行0列元素的地址

a[1]+2,*(a+1)+2,&a[1][2]:数组第一行第2列元素的地址

*(a[1]+2),*(*(a+1)+2),a[1][2]:取数组第一行第2列元素的值

注意!不要把&a[i]简单的理解为a[i]的物理地址,因为并不存在a[i]这个变量。它只是一种地址的计算方法,能得到第i行的地址。&a[i]和a[i]的值是一样的,但它的含义却不同。 &a[i]或a+i指向行,而a[i]或*(a+i)指向列。当下标j=0时,&a[i]和a[i]+j的值相等。*(a+i)只是a[i]的另一种表示形式。在二维数组中,a+i=a[i]=*(a+i)=&a[i]=&a[i][0]即它们的地址值是相等的。 

2.关于Linux gcc编译完 要注意命令行之间参数要加空格

3.atoi 把地址内容转换成整形

4.int(*p)() 指向函数的指针 该函数返回值是整型量即函数指针。

  int *p() 函数指向一个指针 该指针的返回值是整形量即指针函数。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: