C语言——printf函数的结合顺序
2016-12-02 23:10
211 查看
下面用一个例子来看:
int arr[] = {6,7,8,9,10};
int *ptr = arr;
*(ptr++)+=123;
printf(“ %d %d ”, *ptr, *(++ptr));
分析:
int *ptr = arr;
此时指针指向第一个元素,即6
*(ptr++)+=123;
此时指针ptr自加表示地址加一,指向第二个元素
printf(“ %d %d ”, *ptr, *(++ptr));
Printf中是向右的结合方向,所以先执行的是*(++ptr),所以此时指针又向后移了一位,*(++ptr)的值为8,再执行*ptr,值也为8
int arr[] = {6,7,8,9,10};
int *ptr = arr;
*(ptr++)+=123;
printf(“ %d %d ”, *ptr, *(++ptr));
分析:
int *ptr = arr;
此时指针指向第一个元素,即6
*(ptr++)+=123;
此时指针ptr自加表示地址加一,指向第二个元素
printf(“ %d %d ”, *ptr, *(++ptr));
Printf中是向右的结合方向,所以先执行的是*(++ptr),所以此时指针又向后移了一位,*(++ptr)的值为8,再执行*ptr,值也为8
相关文章推荐
- C语言——printf函数的结合顺序
- C语言printf函数输出表达式中的计算顺序
- c语言中printf()函数中的参数计算顺序
- C语言printf函数输出表达式中的计算顺序
- C语言printf函数输出表达式中的计算顺序
- C语言 printf函数对参数的计算顺序自加自减的讨论
- C语言的printf函数的执行顺序
- C语言printf函数输出表达式中的计算顺序
- C语言printf函数求值顺序
- 关于C语言中printf函数的参数执行顺序
- C语言的printf函数以从右到左的顺序输出,每个数据项可以进行算术但各自互不影响
- printf函数对参数的计算顺序,是从右往左的
- C语言中printf格式化输出函数(转载)
- c语言输入输出函数printf与scanf的用法格式
- 【疑问】有关C语言中printf函数的输出和格式的问题
- c语言中可变参数的原理---printf()函数
- printf函数对参数的计算顺序,是从右往左的
- C语言中函数参数的入栈顺序
- C语言中函数参数的入栈顺序
- C语言中printf格式化输出函数