C++將保存char、int 和double到txt文件中
C++保存char、int 和double到txt文件
定義文件保存的路徑
FILE *ID_AZ_EL_file = fopen("/home/jht/VIns_Code/GVINS/output/ID_AZ_EL.txt", "w");?具體的程序
int Sate_NUM = curr_obs[j]->sat;
char na_sys;
if(sys == SYS_GPS)
na_sys = 'A';
else if(sys == SYS_BDS)
na_sys = 'C';
else if(sys == SYS_GLO)
na_sys = 'R';
else if(sys == SYS_GAL)
na_sys = 'E';
// char c_sate_num= (char) (sate_num+'0');
// strcat(na_sys,c_sate_num);
double Azimuth = Azel_11[0] * (180.0 / 3.14);
double Elevation = Azel_11[1] * (180.0 / 3.14);
std::cout<<"=----------------Sate_NUM = "<<Sate_NUM<<std::endl;
std::cout<<"=----------------Azimuth = "<<Azimuth<<std::endl;
std::cout<<"=----------------Elevation = "<<Elevation<<std::endl;
if(i==10)
{
fprintf (ID_AZ_EL_file, "%c%i %3.0f %3.0f\n",na_sys,Sate_NUM,Azimuth,Elevation);
// fprintf (ID_AZ_EL_file, "%5.2f,%5.2f\n", Azimuth,Elevation);
}C++中各種類型char、int、long、double等數(shù)據(jù)范圍
概念、整型:表示整數(shù)、字符和布爾值的算術(shù)類型合稱為整型(integral type)。
關(guān)于帶符號與無符號類型:
- 整型 int、stort 和 long 都默覺得帶符號型。
- 要獲得無符號型則必須制定該類型為unsigned,比方unsigned long。
unsigned int類型能夠簡寫為unsigned,也就是說,unsigned后不加其它類型說明符就意味著是unsigned int。
一字節(jié)表示八位,即:1byte = 8 bit;
int: 4byte = 32 bit
有符號signed范圍:-2^31 ~ 2^31-1
- 即:2147483647 ~ -2147483648
- 無符號unsigned范圍:0 ~ 2^32-1(4.29 * 10^9 = 4.29e+9)
- 即:4294967295 ~ 0
- long: 4 byte = 32 bit 同int型
long long:
- 范圍:-9223372036854775808 ~ 9223372036854775807(>10^18)
double: 8 byte = 64 bit
- 范圍:1.79769e+308 ~ 2.22507e-308
long double: 12 byte = 96 bit
- 范圍: 1.18973e+4932 ~ 3.3621e-4932
float: 4 byte = 32 bit
- 范圍: 3.40282e+038 ~ 1.17549e-038
int、unsigned、long、unsigned long 、double的數(shù)量級最大都僅僅能表示為10億,即它們表示十進(jìn)制的位數(shù)不超過10個,即能夠保存全部9位整數(shù)。
而short僅僅是能表示5位;
另外對于浮點說而言:使用double類型基本上不會有錯。
在float類型中隱式的精度損失是不能忽視的,二雙精度計算的代價相對于單精度能夠忽略。
其實,在有些機器上,double類型比float類型的計算要快得多。
float型僅僅能保證6位有效數(shù)字,而double型至少能夠保證15位有效數(shù)字(小數(shù)點后的數(shù)位),long double型提供的精度通常沒有必要,并且還要承擔(dān)額外的執(zhí)行代價。
double是8字節(jié)共64位,當(dāng)中小數(shù)位占52位,2-^52=2.2204460492503130808472633361816e-16,量級為10^-16,故可以保證2^-15的全部精度。
在有些機器上,用long類型進(jìn)行計算所付出的執(zhí)行時代價遠(yuǎn)遠(yuǎn)高于用int類型進(jìn)行相同計算的代價,所以算則類型前要先了解程序的細(xì)節(jié)而且比較long類型與int類型的實際執(zhí)行時性能代價。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

