int arr[3] = {10, 20, 30};
int *parr = arr;
1. *parr 、 *arr 分别代表什么
*parr = 10, *arr =10
2. *(parr+1) 、 *(arr+1)、*parr+1、*arr+1 分别代表什么
*(parr+1) = 20,*(arr+1)=20, 引用的是arr[1]
*parr+1 =11, *arr+1=11 ,将arr[0]的值+1,结果是11,但是arr[0]的值还是10,没有修改。
3.parr++、 ++parr, arr++ ,++arr 分别代表什么
parr++:先返回arr[0]的地址,然后将指针指向arr[1]
parr++:先将指针指向arr[1],再返回arr[1]的地址,
arr++:错误,常量不能改变
++arr:错误,常量不能改变
4.*parr++、*++parr 、*arr++、*++arr 分别代表什么
*parr++:代表先返回值10,然后将指针指向arr[1]
*++parr :先将指针指向arr[1],然后再引用它的值20
*arr++、*++arr:错误,常量不能改变
5.*(parr++), *(arr++) 分别代表什么
*(parr++):先将指针指向arr[1],再引用他的值,为20
*(arr++) :错误,常量不能改变
6.(*parr)++, (*arr)++
(*parr)++:先引用arr[0],然后将arr[0]++,所以执行完之后arr[0]的值是11
(*arr)++: 先引用arr[0],然后将arr[0]++,所以执行完之后arr[0]的值是11
C高级day3———作业
最新推荐文章于 2025-04-14 22:26:17 发布