Search…

Nhập Xuất Cơ Bản trong C++

06/09/20203 min read
Cung cấp các kiến thức cơ bản về nhập xuất chuẩn (standard input/output) trong C++.

Tổng quan

Thư viện <iostream> trong C++ cung cấp đầy đủ các tính năng cần thiết cho các thao tác nhập/xuất dữ liệu. Do đó để thực hiện các thao tác này phải include thư viện này bằng chỉ thị sau:

#include <iostream>

Ngoài ra, using namespace std; do các phương thức nhập xuất của C++ chuẩn nằm trong namespace này.

C++ cung cấp các hàm nhập xuất chuẩn:

  • cin – Hàm nhập dữ liệu từ bàn phím (Standard input device).
  • cout – Hàm xuất dữ liệu ra màn hình (Standard output device).

cin

Bàn phím là thiết bị nhập chuẩn trên hầu hết các loại máy tính. Để nhập dữ liệu cho các biến từ bàn phím, sử dụng cin và toán tử >> như sau:

int variable;
cin >> variable;

Khi đó chương trình sẽ dừng lại và chờ đợi người sử dụng nhập dữ liệu vào từ bàn phím.

Nếu cần nhập liên tục dữ liệu cho nhiều biến, có thể sử dụng toán tử >> liên tục trên cùng một hàm cin:

cin >> variable_1 >> variable_2 >> … >> variable_n;

Khi đó, các biến sẽ được phân cách bằng một ký tự trắng (white space characters). White space character bao gồm: ký tự khoảng trắng (ASCII code = 32), ký tự tab (‘\t’) và ký tự xuống dòng (‘\n’).

Toán tử >> đã được overload sẵn cho một số kiểu dữ liệu cơ bản của C++ như int, float, char, … Do đó có thể nhập dữ liệu cho các biến có kiểu dữ liệu khác nhau trên cùng một hàm cin.

Lưu ý: dữ liệu nhập vào từ bàn phím sẽ được tự động casting sang kiểu dữ liệu của biến. Việc chuyển kiểu này là ngầm định, do đó lập trình viên cần lưu ý khi khai báo biến để tránh tình trạng mất dữ liệu.

cout

Để xuất một biểu thức ra màn hình (Standard output device), thực hiện như sau:

cout << expression;

Cũng có thể xuất một dãy các biểu thức bằng cách sử dụng nhiều toán tử << trên cùng một hàm cout:

cout << expression_1 << expression_2 << … << expression_n;

Cũng như toán tử >> được sử dụng trong cin, toán tử << cũng được overload sẵn cho các kiểu dữ liệu cơ bản. C++ sẽ tự động nhận dạng kiểu dữ liệu và xuất dữ liệu ra màn hình một cách phù hợp.

Chương trình minh hoạ

Chương trình dưới đây sẽ giúp hiểu rõ hơn về cin, cout và cách hoạt động của chúng.

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

int main()
{
	string studentName;
	float midtermScore, practiceScore, finalScore;

	cout << "Enter student name: ";
	getline(cin, studentName);

	cout << "Enter student scores: ";
	cin >> midtermScore >> practiceScore >> finalScore;

	cout << "Average score: " 
		<< midtermScore * 0.2 + practiceScore * 0.3 + finalScore * 0.5 
		<< endl;

	fflush(stdin);
	cin.get();
	return 0;
}

Sử dụng hàm getline để nhập chuỗi ký tự có khoảng trắng. fflush(stdin)cin.get() không quan trọng trong thời điểm hiện tại, sau này có thể tuỳ chỉnh lại cho phù hợp sau khi đã nắm vững các phương pháp lập trình.

IO Stream

IO Stream Co., Ltd

30 Trinh Dinh Thao, Hoa Thanh ward, Tan Phu district, Ho Chi Minh city, Vietnam
+84 28 22 00 11 12
developer@iostream.co

383/1 Quang Trung, ward 10, Go Vap district, Ho Chi Minh city
Business license number: 0311563559 issued by the Department of Planning and Investment of Ho Chi Minh City on February 23, 2012

©IO Stream, 2013 - 2024