c语言中*z++与++*z的区别

2025-03-10 21:03:25
推荐回答(3个)
回答1:

由运算符结合性可知
*z++等效于*(z++) 即表达式的值为*z,且引起指针z指向后一元素

++*z等效于++(*z) 即表达式的值为z指针所指当前元素的值自增一后的值,且指针z指向不变

回答2:

*Z++是先使用*Z,然后将*z加1
*Z++是先将*z加1,然后再使用*z

回答3:

*为解引用操作符,指针解引用后返回的是指针所指向的值的类型。++为自增运算符。
后自增为先取原值,然后再增加原值。前自增为先增加原值然后再取值。
*z++表达式的结果为取*z的值,然后将z指针自增。
++*z表达式的结果为取先将指针自增,然后,解引用z