在C中将double转换为char *

赛格

如何将double转换为char *。

#include <stdio.h>

int main() {
    char * buf;
    double number = 3.123;
    sprintf(buf,"%f",number);
    printf("%s",buf);
    return 0;
}

这种方法是行不通的,我也不知道为什么。

Aplet123

char* buf声明buf为字符指针,但实际上并未为其分配任何内存。您应该声明buf为分配内存的数组:

char buf[128];
double number = 3.123;
sprintf(buf, "%f", number);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章