Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

แปลงสตริงค่าฐานสิบหกเป็นสตริงค่า ASCII ใน C ++


ในบทช่วยสอนนี้ เราจะพูดถึงโปรแกรมเพื่อแปลงสตริงค่าฐานสิบหกเป็นสตริงค่า ASCII

สำหรับสิ่งนี้ เราจะได้รับสตริงที่มีค่าเลขฐานสิบหกบางส่วน งานของเราคือหาค่าเลขฐานสิบหกนั้นแล้วแปลงเป็นค่า ASCII ที่เทียบเท่ากัน

ตัวอย่าง

#include <bits/stdc++.h>
using namespace std;
string convert_ASCII(string hex){
   string ascii = "";
   for (size_t i = 0; i < hex.length(); i += 2){
      //taking two characters from hex string
      string part = hex.substr(i, 2);
      //changing it into base 16
      char ch = stoul(part, nullptr, 16);
      //putting it into the ASCII string
      ascii += ch;
   }
   return ascii;
}
int main(){
   cout << convert_ASCII("6176656e67657273") << endl;
   return 0;
}

ผลลัพธ์

avengers