int arr[]={6,7,8,9,10}; int *ptr=arr; *(ptr++)+=123; printf(
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/09/30 17:39:00
int arr[]={6,7,8,9,10}; int *ptr=arr; *(ptr++)+=123; printf("%d,%d",*ptr,*(++ptr)); 求答案和原理
int arr[]={6,7,8,9,10}; //定义数组包括5个元素
int *ptr=arr; //定义指针变量,指向数组的首地址
*(ptr++)+=123; //等价于*(ptr++)=*(ptr++)+123首选计算括号里的,是后置加,加*是取括号指针所针变量的内容即6,用完之后,ptr指向arr[1],但现在是6+123即129赋给*(ptr++),这时ptr指向的是arr[1],所以arr[1]=129,记住赋完之后ptr又加1,指向的是arr[2]
printf("%d,%d",*ptr,*(++ptr));//而这时输出ptr就是8,而后边的是先地址加1再取内容,因些是9
int *ptr=arr; //定义指针变量,指向数组的首地址
*(ptr++)+=123; //等价于*(ptr++)=*(ptr++)+123首选计算括号里的,是后置加,加*是取括号指针所针变量的内容即6,用完之后,ptr指向arr[1],但现在是6+123即129赋给*(ptr++),这时ptr指向的是arr[1],所以arr[1]=129,记住赋完之后ptr又加1,指向的是arr[2]
printf("%d,%d",*ptr,*(++ptr));//而这时输出ptr就是8,而后边的是先地址加1再取内容,因些是9
int arr[]={6,7,8,9,10}; int *ptr=arr; *(ptr++)+=123; printf(
main() { int i,*ptr; int array[]={2,4,6,8,10}; ptr=array; fo
#include void main(){ int b=3;int a; int arr[]={6,7,8,9,10};
设有以下定义:int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};int(*ptr)[3]
*ptr++ =
int(*ptr)[10]; 完全不理解,
int (*ptr)[3]
static int a[2][3]={1,2,3,4,5,6}; int m,*ptr=&a[0][0]; 执行m=(
中括号的含义昨天提问题,发现中括号好象有很多含意int *arr = new int[2];arr[0] = 2;//这
若已定义int arr[ ][ 3 ]={1,2,3,4,5,6},则数组a第一维长度是?
printf("name:");if(i==4)ptr->next=NULL;intRun()MSGmsg;Update
定义int arr[5]={1,2,3};则引用数组元素a[4]的值是:.