Kiểu Và Khai Báo Biến Trong C – Wikipedia Tiếng Việt
Có thể bạn quan tâm
Có 4 kiểu cơ bản của các biến trong C; đó là: char, int, double và float.
| Tên kiểu | Ý nghĩa |
|---|---|
| char | Đơn vị cơ bản nhất có thể địa chỉ hóa được; nó là một byte. Đây là một kiểu nguyên. |
| int | Loại số nguyên theo kích cỡ tự nhiên nhất của các máy tính. Thông thường nó có thể lấy trọn một khoảng có thể địa chỉ hoá được của một word với độ lớn biến thiên từ 16, 32, hay 64 bit tùy theo kiến trúc của CPU và hệ điều hành. |
| double | Một giá trị dấu chấm động có độ chính xác kép. |
| Float | Một giá trị dấu chấm động có độ chính xác đơn. |
Để khai báo một biến có kiểu cơ bản, tên của kiểu được ghi ra trước sau đó đến tên của biến mới (hay của nhiều biến mới cách phân cách nhau bởi dấu phẩy) -- (Xem thêm định nghĩa dãy điểm)
charred; intblue,yellow;Các định tính khác nhau có thể đặt vào trong các kiểu cơ bản này để điều chỉnh kích cỡ và sẽ được miêu tả trong phần sau.
Lưu ý: Ở đây chỉ nêu ra trường hợp khai báo đơn giản không đi kèm với việc gán giá trị khởi động cho biến
Dấu
sửaMột kiểu được gọi là có dấu nếu kiểu nguyên đó có thể chứa các số âm. Ngược lại các kiểu cơ bản nào không chấp nhận các số âm là kiểu không dấu.
Có hai kiểu nguyên là char và int có thể có dấu âm hoặc không. Theo mặc định thì mọi kiểu int là có dấu (nghĩa là chúng chấp nhận các số âm). Để dùng dưới dạng không có dấu (tức là kiểu nguyên chỉ chấp nhận các sô không âm) thì từ khoá unsigned phải được dùng. Ngoài ra, thay vì khai báo đầy đủ trong dạng unsigned int, người ta có thể lược bỏ bớt từ khóa int (và nó được xem như hiểu ngầm—điều này chỉ dùng được cho kiểu int mà thôi). Như vậy hai khai báo sau đây hoàn toàn tương đương:
unsignedintgreen; unsignedgreen;Đặc tả của C không xác định rõ ràng là kiểu char sẽ là loại có dấu hay không dấu; khi đó, dấu của kiểu này tùy thuộc vào quy định của nhà phát hành trình dịch. Như vậy, một cách để giảm sai sót khi làm việc trên nhiều loại trình dịch C khác nhau là khai báo rõ ràng bằng các định tính signed hay unsigned nếu dùng kiểu char để tính toán trên các con số. (Dù sao, nó thực sự sẽ không quá quan trọng nếu dùng kiểu char như là kiểu "ký tự".)
unsignedchargrey; signedcharwhite;Tiêu chuẩn chung yêu cầu char, signed char, unsigned char là các kiểu khác nhau. Ngoài ra, các hàm chuẩn về dãy các ký tự sử dụng các con trỏ chỉ tới kiểu char (không có định tính), nhiều trình dịch C sẽ bắt lỗi (hay cảnh cáo) nếu các kiểu ký tự khác được dùng như là dãy ký tự được chuyển vào các hàm này.
Kích cỡ
sửa Trong phần này hai cụm từ "chiếm" và "có độ dài" đều có nghĩa là "phần bộ nhớ cần thiết để dành cho một biến"; biến này có kiểu được miêu tả tùy theo chi tiết của bài viết.Kiểu int cũng có các định tính về kích cỡ để đặc biệt hóa tầm rộng của giá trị mà kiểu này cho phép (tương ứng với đó là việc thay đổi phần bộ nhớ dùng để chứa các số có kiểu này).
shortintyellow; longintorange;Tương tự như đã đề cập trong phần trước, người ta có thể bỏ không viết từ khóa int trong các kiểu mà đầy đủ phải viết là short int or long int. Thí dụ của hai khai báo sau đây là tương đương.
longintbrown; longbrown;Có một số nhầm lẫn trong giới hiểu biết về C như là các kiểu nguyên có độ lớn bao nhiêu. Trong tiêu chuẩn thì không chỉ một cách rõ ràng việc này:
- Kiểu short int không thể lớn hơn kiểu int.
- Kiểu int không thể lớn hơn long int.
- Kiểu short int phải dài ít nhất 16 bit.
- Kiểu long int phải dài ít nhất 32 bit.
Trong tiêu chuẩn đã không đòi hỏi gì về các kích cỡ nêu trên và những khác nhau cần thiết. (Nghĩa là hoàn toàn hợp lệ nếu cả ba kiểu đều dài 64 bit!) Để có được một miêu tả chính xác và đơn giản của các kiểu, mỗi loại máy tính người ta áp dụng vào trong mỗi kiểu (cũng như là kích cỡ của một kiểu con trỏ; xem phần đưới đây) một loại lược đồ đã được tạo ra; (xem:64-Bit Programming Models Lưu trữ ngày 23 tháng 7 năm 2005 tại Wayback Machine). Hai lược đồ được biết nhiều nhất là
- ILP32, trong đó int, long int và các kiểu con trỏ chiếm 32 bit.
- LP64, trong đó, long int và con trỏ mỗi loại chiếm 64 bit, còn int có độ dài 32 bit.
Hầu hết các trình dịch dùng các lược đồ trên dùng 16 bit cho kiểu short int.
Một biến double có thể là một long double, mà trình dịch có thể sử dụng thay cho một kiểu double thuần túy. Tương tự tình huống trước, chuẩn C không hề nêu rõ các kích cỡ tương đối giữa các giá trị dấu chấm động, mà chỉ đòi hỏi float không được lớn hơn long double về kích cỡ.
Từ khóa định tính const cho các kiểu
sửaĐể giúp tăng cường độ an toàn trong các chương trình, các giá trị có thể được đánh dấu là các hằng bằng từ khóa định tính const. Với từ khóa này thì một biến khai báo trở thành một hằng. Mọi thao tác do vô ý hay cố ý để điều chỉnh giá trị của nó sẽ bị báo lỗi bởi hầu hết các trình dịch. Bởi vì sau khi đã dùng từ khóa định tính const thì các giá trị của biến không thể thay đổi nữa nên người lập trình phải gán giá trị ban đầu ngay lúc khai báo.
Chuẩn C cho phép hoán đổi vị trí của các hiệu chính. Thí dụ cả hai khai báo hằng sau đây là tương đương
intconstblack=12; constintblack=12;Cách khai báo đầu thường phản ánh cách dùng const trong cách dùng kiểu con trỏ trong khi cách thứ nhì lại tự nhiên hơn và phổ dụng hơn.
Từ khóa » Trong C++ Các Biến Kiểu Ký Tự Gồm
-
Kiểu Ký Tự Trong C++ Là Gì? (Phần 1) - CodeLearn
-
Kiểu Ký Tự Trong C++ (Character) | How Kteam
-
4.1 Kiểu Kí Tự - Khóa Học C++
-
Các Kiểu Dữ Liệu Trong C++ Và Cách Khai Báo - Freetuts
-
[Tự Học C++] Giới Thiệu Về Kiểu Dữ Liệu Char Trong C++ - Cafedev
-
[Lập Trình C++ Cơ Bản] Bài 3: Kiểu Dữ Liệu, Hằng Và Biến. Câu Lệnh ...
-
Nhập Chuỗi Trong C++
-
Ký Tự đặc Biệt Trong C++ - Học Lập Trình C++ Online - Viettuts
-
Sự Khác Biệt Giữa Char S
-
Các Kiểu Dữ Liệu Trong Lập Trình C/C++ (Data Type) | TopDev
-
Xâu Ký Tự Trong C++
-
Xâu Trong C++ - VNOI
-
Chuỗi Ký Tự Là Gì? Cách Khởi Tạo Và Một Số Kỹ Thuật Lập Trình Trên Chuỗi
-
Kiểu Dữ Liệu Trong C/C++