printf的参数赋值的顺序
#include <stdio.h>
int main()
{
int b=3;
int arr[]={6,7,8,9,10};
int *ptr = arr;
printf("%d\n",*ptr);
*(ptr++) += 123;
printf("%d,%d\n",*ptr,*(++ptr));
//printf的参数赋值顺序是从右向左
int i=5;
printf("%d,%d\n",i++,i);//5,5
i=5;
printf("%d,%d\n",++i,i);//6,5
i=5;
printf("%d,%d\n",i,i++);//5,5
i=5;
printf("%d,%d\n",i,++i);//6,6
}
评价:
(1)、自增符号在变量前面,则变量先自增再参与其他运算;自增符号在变量后面,则变量先参与其他运算再自增
(2)、printf的参数赋值从右往左。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
【推荐】AI 的力量,开发者的翅膀:欢迎使用 AI 原生开发工具 TRAE
【推荐】2025 HarmonyOS 鸿蒙创新赛正式启动,百万大奖等你挑战