我有一个大小为1500的缓冲区。在这个缓冲区中,我需要检查从100到115的15个字节是否全部为零。如果不使用任何循环,我们该如何实现呢?数据类型为“unsigned char”,实际上是一个无符号字符数组。
平台:Linux,C语言,gcc编译器。
使用
或者采用按位比较是否正确。请给出建议。
平台:Linux,C语言,gcc编译器。
使用
memcmp()
是否正确?我正在从智能卡中读取一些数据并将它们存储在缓冲区中。现在我需要检查最后15个字节是否连续为零。我提到了memcmp()
,因为我需要一种高效的方法;智能卡读取已经花费了一些时间。或者采用按位比较是否正确。请给出建议。
memcmp()
是一种可行的方法。您所指的零是 ASCII 数字'0'
还是 ASCII NUL'\0'
(零字节)? - Jonathan Lefflermemcmp
并不是特别适用的函数。如果存在memspn
或memcchr
函数,则更为适用。 - Ben Voigt