为什么两个指针相减是整数而两个指针相加不是
两个指针相减得到的结果是两个指针之间的距离,因为指针存储的是内存地址,相减得到的是地址差,而地址差是以字节为单位的整数,因此两个指针相减得到的结果是整数。
而两个指针相加得到的结果并不是两个指针之间的距离,而是两个指针所指向的数据类型的大小的倍数。因为指针相加时,编译器会根据指针所指向的数据类型的大小调整指针的偏移量,所以得到的结果并不一定是整数,也可能是浮点数。
原文地址: https://www.cveoy.top/t/topic/gJjg 著作权归作者所有。请勿转载和采集!