gpt4 book ai didi

c - 在C中将数字写到没有printf的文件中?

转载 作者:行者123 更新时间:2023-11-30 19:25:41 25 4
gpt4 key购买 nike

除了printf之外,还有其他方法可以通过系统调用或其他较低级别的机制来实现吗?这只是将字符打印到屏幕/文件:

write(STDOUT_FILENO, buffer, size);


谢谢!

最佳答案

我没有教程就知道了,只是您对转换的建议,谢谢您的鼓励!我希望它不要太草率。

#define MAX_CHAR_LENGTH 22 //64bit Character Length including sign
char *itoa(long number){
char *string = malloc(MAX_CHAR_LENGTH);
char temp, index = 0;
char sign = number < 0 ? '-' : 0;
if (number == 0) {
string[index++] = '0';
string[index] = '\0';
}
else while (number){
string[index++] = ((number % 10) * (number < 0 ? -1 : 1)) + 48;
number/=10;
if (number == 0){
if (sign){
string[index++] = sign;
}
string[index] = '\0';
for (int i = 0, j = index - 1; i < j; i++, j--){
temp = string[i];
string[i] = string[j];
string[j] = temp;
}
}
}
string = realloc(string, index);
write(STDOUT_FILENO, string, index);
return string;
}

关于c - 在C中将数字写到没有printf的文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58510741/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com