Chuyển Int Sang String Trong C++
Có thể bạn quan tâm
Hướng dẫn cách chuyển int sang string trong C++. Bạn sẽ học được cách dùng hàm to_string() trong C++ sau bài học này.
Chúng ta có 2 phương pháp để chuyển int sang string trong C++ như sau:
- Sử dụng hàm template (trước C++11)
- Sử dụng hàm to_string (từ C++11)
Chuyển float và int sang string trong C++ bằng hàm template
Phương pháp đầu tiên cũng để chuyển int sang string trong C++ đó chính là sử dụng hàm template sau đây:
| #include <sstream>template <typename T> std::string tostr(const T& t){ std::ostringstream os; os<<t; return os.str();} |
Hàm template trên có tác dụng chuyển đổi kiểu số bao gồm cả int lẫn float sang kiểu string. Sau khi đã khai báo template này, chúng ta có thể sử dụng nó nhiều lần trong chương trình.
Ví dụ cụ thể, chúng ta có thể chuyển float và int sang string như chương trình sau. Lưu ý chúng ta sử dụng tới hàm typeid.name() để kiểm tra kiểu của dữ liệu trước và sau khi thay đổi bằng hàm template.
| #include <iostream>#include <sstream> #include <typeinfo>using namespace std;template <typename T> string tostr(const T& t){ ostringstream os; os<<t; return os.str();}int main() { int a = 123; float b = 3.45; cout << "Kieu cua a: "<< typeid(a).name() <<endl; cout << "Kieu cua b: "<<typeid(b).name() <<endl; //Kiểu sau khi thay đổi cout << "Kieu thay doi cua a: "<< typeid(tostr(123)).name() <<endl; cout << "Kieu thay doi cua b: "<<typeid(tostr(3.1415)).name() <<endl; return 0;} |
Kết quả, hai biến a và b với kiểu int và float đã được chuyển sang kiểu string bằng hàm tostr như sau:
| Kieu cua a: iKieu cua b: fKieu thay doi cua a: NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEKieu thay doi cua b: NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE |
Chuyển int sang string trong C++ bằng hàm to_string
Để sử dụng hàm template ở trên, chúng ta đều phải khai báo template ở đầu mỗi chương trình, và chuyện này thật là rườm rà phải không nào?
Đó là lý do mà từ phiên bản C++11 trở đi, song hành cùng với hàm template ở trên thì các nhà phát triển C++ đã thêm vào một hàm mới có chức năng tương tự nhưng lại có thể sử dụng dễ dàng hơn, đó chính là hàm to_string.
Hàm to_string là một hàm được thêm vào từ phiên bản C++11, có tác dụng chuyển số sang string trong C++. Hàm to_string có thể chuyển tất cả các định dạng kiểu số như int, float, double sang string trong C++ với cú pháp đơn giản và ngắn gọn.
Chúng ta sử dụng hàm to_string() trong C++ với cú pháp sau đây:
to_string(num);
Trong đó num là số cần chuyển sang kiểu chuỗi string, và num có thể ở bất kiểu số nào, ví dụ như int, float, double hay short chẳng hạn.
Ví dụ cụ thể, chúng ta có thể chuyển int sang string trong C++ bằng hàm to_string và kiểm tra kiểu trước và sau khi chuyển đổi bằng hàm typeid.name() như sau:
| #include <iostream>#include <typeinfo>using namespace std;int main() { int a = 123; float b = 3.45; cout << "Kieu cua a: "<< typeid(a).name() <<endl; cout << "Kieu cua b: "<<typeid(b).name() <<endl; //Kiểu sau khi thay đổi cout << "Kieu thay doi cua a: "<< typeid(to_string(123)).name() <<endl; cout << "Kieu thay doi cua b: "<<typeid(to_string(3.1415)).name() <<endl; return 0;} |
Kết quả, hai biến a và b với kiểu int và float đã được chuyển sang kiểu string bằng hàm to_string như sau:
| Kieu cua a: iKieu cua b: fKieu thay doi cua a: NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEKieu thay doi cua b: NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE |
Tổng kết
Trên đây Kiyoshi đã hướng dẫn bạn về cách chuyển int sang string trong C++ rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.
Và hãy cùng tìm hiểu những kiến thức sâu hơn về C++ trong các bài học tiếp theo.
URL Link
https://laptrinhcanban.com/cpp/lap-trinh-cpp-co-ban/string-trong-cpp/chuyen-int-sang-string-trong-cpp/
Từ khóa » ép Kiểu Int Sang Float Trong C
-
Ép Kiểu Int Sang Float Và Ngược Lại Trong C/C++ - Lập Trình Không Khó
-
Ép Kiểu Trong C - VietTuts
-
Ép Kiểu Trong C - Hoclaptrinh
-
Ép Kiểu Trong C | 64 Bài Học Lập Trình C Hay Nhất
-
Bài 15: Ép Kiểu Dữ Liệu Trong Lập Trình C - Khuê Nguyễn
-
Ép Kiểu Trong C++ - Techacademy
-
4.2 Ép Kiểu Dữ Liệu - Khóa Học C++
-
Chuyển đổi Float -> Int -> Float - Cộng đồng C Việt
-
Ép Kiểu Ngầm định Trong C++ (Implicit Type Conversion In C++)
-
Cơ Bản Về Chuyển Kiểu Trong C — Modern C++
-
Ép Kiểu Trong C++
-
Chuyển Kiểu, ép Kiểu Trong Java
-
Bai 011: Ép Kiểu Dữ Liệu Trong Lập Trình C - Blog Thủ Thuật
-
C# Cơ Bản Flashcards | Quizlet