c語言浮點轉字元串
⑴ c語言怎麼能把字元串轉化成浮點型數據
使用atof函數。
一、描述:
C 庫函數 double atof(const char *str) 把參數 str 所指向的字元串轉換為一個浮點數(類型為 double 型)。
二、atof() 函數的聲明:
double atof(const char *str)。
三、參數:
str -- 要轉換為浮點數的字元串。
四、返回值:
函數返回轉換後的雙精度浮點數,如果沒有執行有效的轉換,則返回零(0.0)。
實例演示代碼:
⑵ C語言 浮點數轉換為字元串
je[i]存的是一個字元型數據的ASCII碼,比如'1'會被存為49
'0'的ASCII碼為48,所以49-48正好就是整數類型的1
⑶ 51單片機c語言如何把浮點型轉為字元串
用一個聯合體,可以把浮點數轉換為字元型數據。
例如:
union f_to_char{
uchar chr[4];
float ft0;
};
先把ft0賦值,然後chr[4]中就有了字元型數據。
⑷ C語言中如何把浮點型轉換為字元型
一、C語言中數值型數據分為兩大類:整型和浮點型
整型:char int short long
浮點型:float(單精度) double(雙精度)
二、浮點型數據轉存到字元串中
char str[30]; //定義一個字元數組,來存儲數據
double d=123.456; //定義一個浮點型變數d
sprintf(str,"%f", d ); //格式串同printf()格式要求
sprintf(str,"%.2f", d ); //保留兩位小數,第三位四捨五入
三、整型數據轉存到字元串中
char str[30];
int i=123;
sprintf(str, "%d", i );
四、0-9之間的數據轉為字元
C語言中,字元型數據在存儲時,實際上存儲的是字元的ASCII值,字元'0'到'9'對應的ASCII是連續的,其值為48-57,所以,0-9數值轉為字元時,只需要加上'0'就可以了,如:
char ch;
int i;
i=1;
ch=i+'0' ;
printf("ch=%c ascii=%d", ch, ch ); //按%c輸出,就是字元1,按%d輸出就是ASCII值49
⑸ 用C如何將一個浮點數轉化成字元串
#include <iostream.h>
#include <string.h>
void main()
{
float a;
int b;
string string1;
cout<<"輸入一個浮點數";
cin>>a;
b=int(a);
a-=b;
for(int i=0;a==0;i++)//算得整數部分的各個位上的數據,倒充輸出
{
string1[i]=asc(a%10+30);//轉化ascall碼
a=a/10;
}
for(int j=0;j<i/2;j++)//將整數部分化為正確的順序
{
char temp=string[j];
string[j]=string[i-j-1];
string[i-j-1]=temp;
}
string[i]='.';
i++;
j=i;
for(;b==0;i++)//輸出小數部分
{
b=b*10;
a=int(b);
string[i]=asc(a+30);
b-=a;
}
}
⑹ c語言里如何將float轉換成string
sprintf類似於fprintf函數,後者格式化列印到文件,前者列印到一個char*指向的內存
用法:
#include<stdio.h>
floatf=1032.192
charbuffer[32];
//執行以下語句,buffer裡面就保存了f轉換的結果
sprintf(buffer,"%f",f);
⑺ c語言里 怎樣將單精度浮點型數轉換成字元型
這個是br前輩的回答
鏈接在這里:http://..com/question/161721125.html
用gcvt函數!
函數名: gcvt
功 能: 把浮點數轉換成字元串
用 法: char *gcvt(double value, int ndigit, char *buf);
例子:
#include <stdlib.h>
#include <stdio.h>
int main(void)
{
char str[25];
double dNum;
int n = 5;//需要轉化的位數
//一般浮點數
dNum = 9.876;
gcvt(dNum, n, str);
printf( "string = %s\n", str);
//負數
dNum = -123.4567;
gcvt(dNum, n, str);
printf("string = %s\n", str);
//指數
dNum = 0.678e5;
gcvt(dNum, n, str);
printf("string = %s\n", str);
return 0;
}
滿意請採納,不滿意請追問
⑻ C語言里有沒有函數可以把浮點型轉化為字元串
charstr[10];
sprintf(str,"%.2f",12.34);
puts(str);
⑼ 在C語言中怎樣編寫代碼實現把浮點數轉換成字元串
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#defineucharunsignedchar
#defineuintunsignedint
intpows(intx)
{
inty=1;
for(;x!=0;x--)
y=y*10;
returny;
}
voiddisplay_result(doubleresult)
{
if(result<0)
{
printf("-");
display_result(-result);
}
if(result>0)
{
doublei;
intx;
uinty;
i=1;
for(x=0;i>=1;x++)
i=result/pows(x+1);
for(;x!=0;x--)
{
y=((uint)(result/pows(x-1)))%10;
printf("%d",y);
}
printf(".");
i=result-(uint)result;
for(x=0;x<6;x++)
{
y=((uint)(i*pows(x+1)))%10;
printf("%d",y);
}
}
}
intmain()
{
doublenum;
scanf("%lf",&num);
printf("%lf ",num);
display_result(num);
return0;
}
(9)c語言浮點轉字元串擴展閱讀
C++中將字元串轉換成浮點數
#include<iostream>
#include<sstream>
#include<string>
使用命名空間std;
intmain()
{
std::stringstr=「3.14」;
std::stringstreamss(str);
浮動f;
ss>>f;
cout<<f+1;
返回0;
}