首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在没有任何帮助的情况下将负十进制数转换为八进制基

如何在没有任何帮助的情况下将负十进制数转换为八进制基
EN

Stack Overflow用户
提问于 2022-08-16 20:19:23
回答 2查看 164关注 0票数 -1

我正在实现printf函数,现在我坚持将负基数10转换为8八进制数,在下面我放置了一段代码,它可以很好地将一个正十进制数转换成八进制,就像printf一样。

my ft_printf => 15八进制=> 017原始打印本=> 15八进制=> 017

但关于负数:

my ft_printf => -15八进制=> 0-17原始打印本=> -15八进制=> 037777777761

我应该用我的函数修改什么,这样它才能打印负数,就像printf一样,谢谢!

代码语言:javascript
复制
void    process_octal(unsigned int n)
{
    char    *str;
    int     oct = 0;
    int     rem = 0;
    int     place = 1;

    while (n)
    {
        rem = n % 8;
        oct = oct + rem * place;
        n = n / 8;
        place = place * 10;    
    }
    str = ft_itoa(oct);
    ft_putstr_fd(str, 1);
}
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73379873

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档