我读过关于int、size_t和ssize_t的文章,我知道int和ssize_t是有符号的,而size_t是无符号的。
为什么memcmp返回int,而不像recv那样返回ssize_t返回ssize_t?
发布于 2021-06-29 04:31:42
一个int足以保存memcmp的返回值。
如果两个给定的内存区域相等,则memcmp函数返回0;如果第一个区域比较少,则返回小于0的值;如果第一个区域比较多,则返回大于0的值。
ssize_t可能比int大(在大多数实现中也是如此),而int通常是“自然”字长,因此使用较大的字长没有任何好处。
https://stackoverflow.com/questions/68169653
复制相似问题