作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
Stack Overflow 用许多其他语言回答了这个问题,但不是 C。所以我想我会问,因为我有同样的问题。
如何在 C 语言中连接两个整数?
例子:
x = 11;
y = 11;
我想要 z 如下:
z = 1111;
其他示例尝试使用字符串来执行此操作。有什么方法可以在没有字符串的情况下做到这一点?
我正在寻找一种在 C 中执行此操作的有效方法,因为在我的特定用法中,这将进入代码的时间关键部分。
提前致谢!
最佳答案
unsigned concatenate(unsigned x, unsigned y) {
unsigned pow = 10;
while(y >= pow)
pow *= 10;
return x * pow + y;
}
证明compilation/correctness/speed
我避免使用 log10
和 pow
函数,因为我很确定它们使用 float 而且速度很慢,所以这可能是在你的机器上更快。或许。简介。
关于c - 如何在C中连接两个整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12700497/
我是一名优秀的程序员,十分优秀!