Char là gì?
Char là một kiểu dữ liệu C ++ được thiết kế để lưu trữ các chữ cái. Char là từ viết tắt của một ký tự. Nó là một kiểu dữ liệu tích phân, có nghĩa là giá trị được lưu trữ dưới dạng số nguyên. Một char có kích thước bộ nhớ là 1 byte. Nó cũng lưu trữ một ký tự duy nhất.
Trong hướng dẫn C ++ này, bạn sẽ học:
- Char là gì?
- ASCII là gì?
- Tuyên bố Char
- Cú pháp:
- In giá trị ASCII
- In giá trị Char
- Nhập ký tự
- Chuyển đổi ký tự thành chuỗi
ASCII là gì?
Giá trị char được hiểu là một ký tự ASCII. Điều này tương tự như cách các giá trị Boolean được hiểu là đúng hoặc sai. ASCII là từ viết tắt của American Standard Code for Information Interchange. Nó xác định một cách cụ thể để biểu diễn các ký tự tiếng Anh dưới dạng số.
Các số nằm trong khoảng từ 0 đến 127. Ví dụ: ký tự 'a' tương đương với mã ASCII 97.
Tuyên bố Char
Để khai báo một biến char trong C ++, chúng ta sử dụng từ khóa char. Theo sau điều này là tên của biến. Biến có thể được khởi tạo tại thời điểm khai báo. Giá trị của biến phải được đặt trong dấu nháy đơn.
Cú pháp:
Đây là cú pháp khai báo char trong C ++:
char variable-name;
Tên-biến là tên được gán cho biến.
Nếu một giá trị được chỉ định tại thời điểm khai báo, bạn có thể sử dụng cú pháp sau:
char variable-name = 'value';
- Tên biến là tên của biến char.
- Giá trị là giá trị được gán cho biến char.
Ví dụ 1:
#includeusing namespace std;int main() {char grade = 'B';cout << "I scored a: "< Đầu ra:
Đây là ảnh chụp màn hình của mã:
Giải thích mã:
- Bao gồm tệp tiêu đề iostream trong mã của chúng tôi để sử dụng các chức năng của nó.
- Bao gồm không gian tên std trong mã của chúng tôi để sử dụng các lớp của nó mà không cần gọi nó.
- Gọi hàm main (). Logic chương trình nên được thêm vào trong phần thân của hàm này.
- Khai báo một biến ký tự có tên là lớp. Biến cũng đã được gán giá trị B. Lưu ý rằng giá trị của biến được đặt trong dấu nháy đơn.
- In giá trị của loại biến cùng với văn bản khác trên bảng điều khiển.
- Chương trình phải trả về giá trị khi hoàn thành thành công.
- Cuối phần thân của hàm main ().
In giá trị ASCII
Như đã nêu ở trên, mỗi ký tự được hiểu là ký tự ASCII. Bạn có thể lấy giá trị ASCII của bất kỳ ký tự nào. Bạn chỉ cần chuyển ký tự vào hàm int (). Quá trình này được gọi là đúc kiểu. Hãy chứng minh điều này:
Ví dụ 2:
#includeusing namespace std;int main() {char ch;cout << "Enter any character: ";cin >> ch;cout << "The ASCII Value of " << ch << " is " << int(ch);return 0;} Đầu ra:
![]()
Đây là ảnh chụp màn hình của mã:
Giải thích mã:
- Đưa tệp tiêu đề iostream vào mã của chúng tôi để sử dụng các chức năng của nó.
- Bao gồm không gian tên std vào mã của chúng tôi để sử dụng các lớp của nó mà không cần gọi nó.
- Gọi hàm main (). Logic chương trình nên được thêm vào trong phần thân của hàm này.
- Khai báo một biến char có tên là ch.
- In một số văn bản trên bảng điều khiển. Văn bản yêu cầu người dùng nhập giá trị cho biến ch.
- Đọc đầu vào của người dùng từ bàn phím và lưu trữ trong biến ch.
- In một số văn bản trên bảng điều khiển. Văn bản sẽ bao gồm ký tự bạn đã nhập cho biến ch, giá trị ASCII của ký tự này và văn bản khác.
- Chương trình phải trả về giá trị khi hoàn thành thành công.
- Cuối phần thân của hàm main ().
In giá trị Char
Cho một giá trị ASCII, trình biên dịch C ++ có thể trả về ký tự tương ứng. Bạn khai báo một biến char và gán cho nó một giá trị nguyên. Nó sẽ được chuyển đổi thành giá trị ký tự tương ứng.
Ví dụ 3:
#includeusing namespace std;int main() {char x = 64, y = 66, z = 71;cout << x;cout << y;cout << z;return 0;} Đầu ra:
Đây là ảnh chụp màn hình của mã:
Giải thích mã:
- Bao gồm tệp tiêu đề iostream vào mã. Sau đó chúng tôi sẽ sử dụng các chức năng của nó mà không gặp lỗi.
- Bao gồm không gian tên std vào mã. Chúng tôi sẽ sử dụng các lớp của nó mà không cần gọi nó.
- Gọi hàm main (). Logic của chương trình sẽ đi vào phần thân của hàm này.
- Khai báo ba biến char x, y và z. Ba giá trị này đã được gán các giá trị nguyên là 65, 66 và 67. Các giá trị này sẽ được coi là giá trị ASCII cho các ký tự.
- In ra giá trị của biến x trên bảng điều khiển. Vì x được khai báo là một char, nên char có giá trị ASCII là 65 sẽ được trả về, tức là A.
- In ra giá trị của biến y trên bảng điều khiển. Vì y được khai báo là một char, nên char có giá trị ASCII là 66 sẽ được trả về, tức là B.
- In ra giá trị của biến z trên bàn điều khiển. Vì z được khai báo là một char, nên char có giá trị ASCII là 67 sẽ được trả về, tức là C.
- Chương trình phải trả về giá trị khi hoàn thành thành công.
- Phần cuối của phần thân của hàm main ().
Nhập ký tự
Chúng ta có thể sử dụng hàm std :: cin để đọc một ký tự do người dùng nhập thông qua bàn phím. Std :: cin sẽ cho phép bạn nhập nhiều ký tự. Tuy nhiên, biến ký tự chỉ có thể chứa một ký tự. Điều này có nghĩa là chỉ ký tự đầu tiên được nhập vào sẽ được trích xuất và lưu trữ trong biến ký tự. Phần còn lại sẽ nằm trong bộ đệm được sử dụng bởi std :: cin. Để giải nén nó, hãy thực hiện các lệnh gọi tiếp theo tới std :: cin.
Ví dụ 4:
#includeusing namespace std;int main() {cout << "Type a sequence of characters: ";char ch;cin >> ch;cout <<"The ASCII code of "<< ch << " is "<< int(ch) << '\n';cin >> ch;cout <<"The ASCII code of " << ch << " is "<< int(ch) << '\n';return 0;} Đầu ra:
![]()
Đây là ảnh chụp màn hình của mã:
![]()
Giải thích mã:
- Bao gồm tệp tiêu đề iostream trong mã của chúng tôi để sử dụng các chức năng của nó.
- Bao gồm không gian tên std trong mã của chúng tôi để sử dụng các lớp của nó mà không cần gọi nó.
- Gọi hàm main (). Logic chương trình nên được thêm vào trong phần thân của hàm này.
- In một số văn bản trên bảng điều khiển.
- Khai báo một biến ký tự có tên là ch.
- Đọc thông tin nhập của người dùng từ bàn phím. Đầu vào sẽ được lưu trong biến ch. Vì người dùng sẽ nhập một chuỗi ký tự như abc, chỉ ký tự đầu tiên, a, sẽ được lưu trữ trong biến ch.
- In ký tự đầu tiên đã nhập, mã ASCII của nó và văn bản khác trên bảng điều khiển. Mã ASCII được xác định bằng cách chuyển biến ký tự cho hàm int ().
- Đọc ký tự tiếp theo được nhập bởi người dùng. Người dùng sẽ không bắt buộc phải nhập một ký tự mới. Thay vào đó, nó sẽ đọc ký tự thứ hai đã được nhập, nghĩa là, b.
- In ký tự thứ hai đã nhập, mã ASCII của nó và văn bản khác trên bảng điều khiển. Mã ASCII được xác định bằng cách chuyển biến ký tự cho hàm int ().
- Chương trình phải trả về giá trị khi hoàn thành thành công.
- Cuối phần thân của hàm main ().
Chuyển đổi ký tự thành chuỗi
Có một số cách mà chúng ta có thể sử dụng để chuyển đổi ký tự thành chuỗi.
Hãy thảo luận về chúng:
# 1: Sử dụng hàm tạo được cung cấp bởi một lớp chuỗi
Điều này có thể được thực hiện bằng cú pháp sau:
string st(int n,char x);Tham số n biểu thị kích thước của chuỗi sẽ được tạo.
Tham số x là ký tự để chuyển đổi thành một chuỗi.
Hàm trả về một chuỗi.
Ví dụ 5:
#include#include using namespace std;int main() {string st(1, 'C');cout << "The resulting string is : " << st;return 0;} Đầu ra:
Đây là ảnh chụp màn hình của mã:
Giải thích mã:
- Bao gồm tệp tiêu đề iostream trong mã của chúng tôi để sử dụng các chức năng của nó.
- Bao gồm tệp tiêu đề chuỗi trong mã của chúng tôi để sử dụng các chức năng của nó.
- Bao gồm không gian tên std trong mã của chúng tôi để sử dụng các lớp của nó mà không cần gọi nó.
- Gọi hàm main (). Logic chương trình nên được thêm vào trong phần thân của hàm này.
- Chuyển ký tự "C" thành chuỗi có độ dài 1 và gán chuỗi kết quả cho biến st.
- In giá trị của chuỗi st trên bảng điều khiển cùng với văn bản khác.
- Chương trình phải trả về giá trị khi hoàn thành thành công.
- Cuối phần thân của hàm main ().
# 2) Sử dụng toán tử std :: string = và + =
Các toán tử = và + = đã được nạp chồng các ký tự. Cả hai có thể được sử dụng để chuyển đổi một ký tự cụ thể thành một chuỗi.
Ví dụ 6:
#include#include using namespace std;int main() {string st;char b = 'B';st = 'A';st += b;cout << "The resulting string is : " << st;return 0;} Đầu ra:
Đây là ảnh chụp màn hình của mã:
Giải thích mã:
- Bao gồm tệp tiêu đề iostream trong mã của chúng tôi để sử dụng các chức năng của nó.
- Bao gồm tệp tiêu đề chuỗi trong mã của chúng tôi để sử dụng các chức năng của nó.
- Bao gồm không gian tên std trong mã của chúng tôi để sử dụng các lớp của nó mà không cần gọi nó.
- Gọi hàm main (). Logic chương trình nên được thêm vào trong phần thân của hàm này.
- Tạo một biến chuỗi có tên là st.
- Tạo một ký tự tên b với giá trị là B.
- Gán giá trị A cho chuỗi có tên st.
- Sử dụng toán tử + = để chuyển đổi các ký tự thành một chuỗi.
- In giá trị của chuỗi st trên bảng điều khiển cùng với văn bản khác.
- Chương trình phải trả về giá trị khi hoàn thành thành công.
- Cuối phần thân của hàm main ().
# 3: Sử dụng phương thức std :: string
Lớp std :: string đi kèm với nhiều hàm nạp chồng có thể giúp bạn chuyển đổi các ký tự thành chuỗi.
Chúng bao gồm:
- push_back
Hàm này gán một ký tự cụ thể cho phần cuối của một chuỗi. Nó bị quá tải đối với các ký tự.
Nó có cú pháp sau:
void push_back(char ch)Tham số ch là ký tự sẽ được thay đổi thành một chuỗi.
- nối thêm
Nó gán nhiều bản sao của một ký tự cụ thể cho một chuỗi.
Hàm có cú pháp sau:
string& append(size_t n,char ch)Tham số n biểu thị thời gian ký tự sẽ được thêm vào.
Tham số ch là ký tự để thêm vào chuỗi.
- chỉ định
Hàm này thay thế nội dung hiện tại của chuỗi bằng n bản sao của ký tự được chỉ định.
Nó có cú pháp sau:
string& assign(size_t n,char ch);Tham số n biểu thị tổng số bản sao của ký tự.
Tham số ch là ký tự cần sao chép vào chuỗi.
- chèn
Hàm chèn sẽ chèn n bản sao của một ký tự vào vị trí bắt đầu của chuỗi, như được chỉ định trong các đối số.
Nó có cú pháp sau:
string& insert(size_t p,size_t n,char ch);Tham số p biểu thị vị trí từ đầu nơi các ký tự sẽ được chèn vào.
Tham số n biểu thị tổng số bản sao của ký tự.
Tham số ch là ký tự được chèn vào chuỗi.
Ví dụ 7:
#include#include using namespace std;int main() {string st;st.push_back('A');cout << "push_back A returns : " << st << endl;st = "";st.append(1, 'C');cout << "append C returns : " << st << endl;st = "";st.assign(1, 'D');cout << "assign D returns : " << st << endl;st.insert(0, 1, 'E');cout << "insert single character returns : " << st << endl;return 0;} Đầu ra:
Đây là ảnh chụp màn hình của mã:
- Bao gồm tệp tiêu đề iostream trong mã của chúng tôi để sử dụng các chức năng của nó.
- Bao gồm tệp tiêu đề chuỗi trong mã của chúng tôi để sử dụng các chức năng của nó.
- Bao gồm không gian tên std trong mã của chúng tôi để sử dụng các lớp của nó mà không cần gọi nó.
- Gọi hàm main (). Logic chương trình nên được thêm vào trong phần thân của hàm này.
- Tạo một biến chuỗi có tên là st.
- Gán ký tự A vào cuối chuỗi.
- In giá trị của chuỗi st trên bảng điều khiển cùng với văn bản khác. Endl (dòng kết thúc) di chuyển con trỏ đến dòng tiếp theo.
- Đặt giá trị của chuỗi st thành trống.
- Gán một ký tự C cho chuỗi có tên st.
- In giá trị của chuỗi st trên bảng điều khiển cùng với văn bản khác. Endl (dòng kết thúc) di chuyển con trỏ đến dòng tiếp theo.
- Đặt giá trị của chuỗi st thành trống.
- Thay thế nội dung cho chuỗi st bằng một ký tự D.
- In giá trị của chuỗi st trên bảng điều khiển cùng với văn bản khác. Endl (dòng kết thúc) di chuyển con trỏ đến dòng tiếp theo.
- Chèn một ký tự E vào chuỗi có tên st từ chỉ mục đầu tiên của nó.
- In giá trị của chuỗi st trên bảng điều khiển cùng với văn bản khác. Endl (dòng kết thúc) di chuyển con trỏ đến dòng tiếp theo.
- Chương trình phải trả về giá trị khi hoàn thành thành công.
- Cuối phần thân của hàm main ().
# 4: Sử dụng std :: stringstream
Để sử dụng lớp này để chuyển đổi ký tự thành một chuỗi, hãy chèn ký tự vào luồng.
Chúng sẽ được ghi vào chuỗi.
Ví dụ 8:
#include#include #include using namespace std;int main() {string st;stringstream myst;myst << 'A';myst >> st;cout << "The conversion of the single character returns the string: " << st;return 0;} Đầu ra:
Đây là ảnh chụp màn hình của mã:
Giải thích mã:
- Bao gồm tệp tiêu đề iostream trong mã của chúng tôi để sử dụng các chức năng của nó.
- Bao gồm tệp tiêu đề chuỗi trong mã của chúng tôi để sử dụng các chức năng của nó.
- Bao gồm tệp tiêu đề sstream trong mã của chúng tôi để sử dụng các chức năng của nó.
- Bao gồm không gian tên std trong mã của chúng tôi để sử dụng các lớp của nó mà không cần gọi nó.
- Gọi hàm main (). Logic chương trình nên được thêm vào trong phần thân của hàm này.
- Tạo một biến chuỗi có tên là st.
- Tạo một biến luồng có tên là myst.
- Chèn ký tự A vào luồng đối tượng có tên là myst.
- Chuyển đổi đối tượng luồng thành một chuỗi.
- In giá trị của chuỗi st trên bảng điều khiển cùng với văn bản khác. Endl (dòng kết thúc) di chuyển con trỏ đến dòng tiếp theo.
- Chương trình phải trả về giá trị khi hoàn thành thành công.
- Cuối phần thân của hàm main ().
Tóm lược:
- Một char là một kiểu dữ liệu C ++ được sử dụng để lưu trữ các ký tự.
- C ++ Char là một kiểu dữ liệu tích phân, có nghĩa là giá trị được lưu trữ dưới dạng số nguyên.
- Nó chiếm kích thước bộ nhớ là 1 byte.
- C ++ Char chỉ lưu trữ một ký tự.
- Giá trị Char được hiểu là ký tự ASCII.
- ASCII là từ viết tắt của American Standard Code for Information Interchange.
- Nó nêu một cách cụ thể để biểu diễn các ký tự tiếng Anh dưới dạng số.
- Để xem giá trị ASCII của một ký tự, chúng ta chuyển nó vào hàm int ().
- Để xem giá trị char tương ứng của giá trị ASCII, chúng tôi xác định ASCII là một ký tự.