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

วิธีแปลง String เป็น Char Array ใน C++

นี่คือโปรแกรม C++ สำหรับแปลง string เป็น char array สามารถทำได้หลายวิธี

วิธีที่ 1

อัลกอริทึม

Begin
  กำหนดค่า string ให้ตัวแปร char array m
  กำหนดตัวแปร string str
  For i = 0 ถึง sizeof(m)
    คัดลอกตัวอักษรทีละตัวจาก m ไป str
    พิมพ์ตัวอักษรทีละตัวจาก str
End

ตัวอย่าง

#include <iostream>
#include <string.h>
using namespace std;

int main() {
  char m[] = "Tutorialspoint";
  string str;
  int i;
  for (i = 0; i < sizeof(m); i++) {
    str[i] = m[i];
    cout << str[i];
  }
  return 0;
}

วิธีที่ 2

เราสามารถเรียกใช้ฟังก์ชัน strcpy() เพื่อคัดลอก string ไปยัง char array

อัลกอริทึม

Begin
  กำหนดค่าให้ string s
  คัดลอกเนื้อหาของ string ไปยัง char array โดยใช้ strcpy()
End

ตัวอย่าง

#include <iostream>
#include <string>
#include <cstring>
using namespace std;

int main() {
  string str = "Tutorialspoint";
  char c[str.size() + 1];
  strcpy(c, str.c_str());
  cout << c << '\n';
  return 0;
}

ผลลัพธ์

Tutorialspoint

วิธีที่ 3

เราสามารถหลีกเลี่ยง strcpy() ซึ่งใช้ใน C โดยใช้ std::string::copy แทน

อัลกอริทึม

Begin
  กำหนดค่าให้ string s
  คัดลอกเนื้อหาของ string ไปยัง char array โดยใช้ copy()
End

ตัวอย่าง

#include <iostream>
#include <string>
using namespace std;

int main() {
  string str = "Tutorialspoint";
  char c[str.size() + 1];
  str.copy(c, str.size() + 1);
  c[str.size()] = '\0';
  cout << c << '\n';
  return 0;
}

ผลลัพธ์

Tutorialspoint