因为'unr++'是后缀自增运算符,它返回的是'unr'的初始值,然后再将'unr'的值加1。而数组名'unr'是一个指向数组首元素的指针常量,不能被修改。因此,'unr++'是无效的。

而'unr+1'是指针运算,它计算的是'unr'指向的地址加上1个单位的偏移量,即指向下一个元素的地址。它返回的是一个新的指针,而不是修改原指针的值,因此是有效的。

C语言中数组名和自增运算符:为什么unr++无效而unr+1有效?

原文地址: https://www.cveoy.top/t/topic/oxXD 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录