3

为了用来strncmp比较两个unsigned char *缓冲区,我必须将它们转换为const char *.

我正在编写一个计算量很大的程序,这个测试出现在最关键的部分之一。unsigned char *用缓冲区编写我自己的比较函数会更好吗?

我的意思是,转换为const char *fromunsigned char *会影响计算负载吗?

4

2 回答 2

4

不。在这种情况下(转换指针),您只是在避开应该在编译时帮助保护您的类型安全功能。它不会影响生成的编译代码。

于 2013-08-08T13:12:55.063 回答
2

转换为const char *from是否unsigned char *会影响计算负载

它不是。它将指针值从类型unsigned char *转换为const char *,这是一个廉价的操作,不需要生成任何额外的目标代码。

于 2013-08-08T13:12:24.827 回答