check/compare machine datatypes

This commit is contained in:
2021-01-20 14:58:22 +01:00
parent 9b0dd5e7d7
commit 083db81f4e
4 changed files with 49 additions and 1 deletions

View File

@@ -53,6 +53,16 @@ struct block {
// https://zone.ni.com/reference/de-XX/help/370858P-0113/tdmdatamodel/tdmdatamodel/tdm_header_tdx_data/
enum class tdmdatatype {
eInt16Usi,
eInt32Usi,
eUInt8Usi,
eUInt16Usi,
eUInt32Usi,
eFloat32Usi,
eFloat64Usi
};
struct tdm_datatype {
std::string name_;

View File

@@ -76,6 +76,41 @@ class tdm_reaper
return listofids;
}
public:
// check machine's datatypes
// https://en.cppreference.com/w/cpp/language/types
void check_local_datatypes()
{
std::cout<<"\nmachine's C++ datatypes:\n";
std::cout<<std::setw(25)<<std::left<<"char:"
<<std::setw(5)<<std::left<<sizeof(char)<<"byte(s)\n"
<<std::setw(25)<<std::left<<"uint8_t:"
<<std::setw(5)<<std::left<<sizeof(uint8_t)<<"byte(s)\n"
<<std::setw(25)<<std::left<<"short int:"
<<std::setw(5)<<std::left<<sizeof(short int)<<"byte(s)\n"
<<std::setw(25)<<std::left<<"unsigned short int:"
<<std::setw(5)<<std::left<<sizeof(unsigned short int)<<"byte(s)\n"
<<std::setw(25)<<std::left<<"int:"
<<std::setw(5)<<std::left<<sizeof(int)<<"byte(s)\n"
<<std::setw(25)<<std::left<<"unsigned int:"
<<std::setw(5)<<std::left<<sizeof(unsigned int)<<"byte(s)\n"
<<std::setw(25)<<std::left<<"long int:"
<<std::setw(5)<<std::left<<sizeof(long int)<<"byte(s)\n"
<<std::setw(25)<<std::left<<"unsigned long int:"
<<std::setw(5)<<std::left<<sizeof(unsigned long int)<<"byte(s)\n"
<<std::setw(25)<<std::left<<"float:"
<<std::setw(5)<<std::left<<sizeof(float)<<"byte(s)\n"
<<std::setw(25)<<std::left<<"double:"
<<std::setw(5)<<std::left<<sizeof(double)<<"byte(s)\n"
<<std::setw(25)<<std::left<<"long double:"
<<std::setw(5)<<std::left<<sizeof(long double)<<"byte(s)\n\n";
}
public:
// encoding