C++ 用无符号变量替换正符号变量
(在C/C++中) gcc(4.8)编译器在1、2和3、4之间生成的汇编代码中没有区别。在编写实际代码时,(对我来说),使用表1和表3通常更方便,除非它超出了正负符号的范围。(如3333表示32位整数) 有了这个功能,C++ 用无符号变量替换正符号变量,c++,c,variables,C++,C,Variables,(在C/C++中) gcc(4.8)编译器在1、2和3、4之间生成的汇编代码中没有区别。在编写实际代码时,(对我来说),使用表1和表3通常更方便,除非它超出了正负符号的范围。(如3333表示32位整数) 有了这个功能, void mpz_set_ui (mpz_t rop, unsigned long int op) 我把它当作 mpz_set_ui(num, 3); //or an int variable in place of 3 例如 我对当前C(++)标准的理解是,在上述情况下,没
void mpz_set_ui (mpz_t rop, unsigned long int op)
我把它当作
mpz_set_ui(num, 3); //or an int variable in place of 3
例如
我对当前C(++)标准的理解是,在上述情况下,没有必要显式声明为unsigned,但我不确定在某些情况下是否有一些额外的任务需要从signed转换为unsigned,或者,当替换的有符号变量在目标无符号变量的范围内时,它总是完全相同的可执行文件。转换结果不会有实际差异,隐式转换和显式转换做相同的事情。在C++中,显式转换的优点,最好是
mpz_set_ui(num, 3); //or an int variable in place of 3