VC++ Program Converts Hex Strings To Integers

Dec. 9, 2002
Binary numbers are seldom implemented in Visual C++ applications because C++ is considered a "high-level" language. Yet in communications systems, where information is transferred between two different devices through a network, using binary or...

Binary numbers are seldom implemented in Visual C++ applications because C++ is considered a "high-level" language. Yet in communications systems, where information is transferred between two different devices through a network, using binary or hexadecimal numbers is much easier than decimal numbers.

In some applications, the computer's user interface will guide the user to input a hexadecimal number via the keyboard. Because this number will be transferred to an embedded system, it must be converted to a "real" number before leaving the PC. In this case, the hexadecimal-number data type in-putted by the user is string. Unfortunately, Visual C++ 6.0 doesn't offer a conversion function that can transform a string (representing a hexadecimal number) into a real hexadecimal or binary number.

The program to execute such a function implements the flow chart shown in the figure. You must first translate the inputted hexadecimal string into a binary string. Because a hexadecimal character represents a 4-bit binary number, it's better to employ a "switch case" structure to convert a hexadecimal character to a 4-bit binary string. Function convert_hex2bin() carries out this conversion.

After converting the whole hexadecimal string into a binary string, you must translate every 4-bit binary string into an integer that represents the real value of the 4-bit binary number. Function convert_sbin2int() returns this integer value. In this function, the binary string is transformed into a real integer by subfunction atoi(), which is included in the VC++ IDE. This "binary" integer is then converted into a decimal. Finally, all of the small integers are accumulated to form the final result. The resulting real number can be sent to an embedded system or be displayed on the screen as a decimal number.

To download the listings, click Download the Code.

Sponsored Recommendations

Near- and Far-Field Measurements

April 16, 2024
In this comprehensive application note, we delve into the methods of measuring the transmission (or reception) pattern, a key determinant of antenna gain, using a vector network...

DigiKey Factory Tomorrow Season 3: Sustainable Manufacturing

April 16, 2024
Industry 4.0 is helping manufacturers develop and integrate technologies such as AI, edge computing and connectivity for the factories of tomorrow. Learn more at DigiKey today...

Connectivity – The Backbone of Sustainable Automation

April 16, 2024
Advanced interfaces for signals, data, and electrical power are essential. They help save resources and costs when networking production equipment.

Empowered by Cutting-Edge Automation Technology: The Sustainable Journey

April 16, 2024
Advanced automation is key to efficient production and is a powerful tool for optimizing infrastructure and processes in terms of sustainability.

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!