急啊!!sprintf(string,"%.3f",atof(string1)+atof(string2));
sprintf(string,"%.3f",atof(string1)+atof(string2));string,string1,string2是字符串,我的目的是把字符串string1和string2先转化成浮点数(小数点后面保留3位),然后再把这个结果转化成字符串,我这样做老是出错,请高手指点,急!!
你的写法没有问题,可能问题出在string变量这。可能是你定义的string变量不管是指针还是数组在使用前要初始化,并且还要保证它的大小足够能存储那个运算结果,例如:
#include "stdio.h"
#include <stdlib.h>
void main(void){
char *string;
//char string[100];
char string1[]="0.12345";
char string2[]="0.13";
string = (char*)malloc(sizeof(string));
sprintf(string,"%.3f",atof(string1)+atof(string2));
printf("%s\n",string);
string = NULL;
free(string);
}