Tại sao char là 1 Byte trong ngôn ngữ C

Tai Sao Char La 1 Byte Trong Ngon Ngu C



Là một lập trình viên C, chắc hẳn bạn đã từng thắc mắc tại sao kích thước của ký tự char chỉ bằng 1 byte trong ngôn ngữ C. Nó có vẻ giống như một chi tiết nhỏ, nhưng việc tìm ra lý do đằng sau nó có thể giúp bạn viết các chương trình hiệu quả hơn.

Trong bài viết này, chúng tôi sẽ tập trung vào lý do đằng sau ký tự 1 byte trong ngôn ngữ C.

char trong ngôn ngữ C là gì

Để lưu trữ các ký tự và chữ cái, C sử dụng kiểu char. Các giá trị ký tự (char) trong C được giữ trong 1 byte bộ nhớ và có phạm vi giá trị từ 0 đến 255 hoặc -128 đến 127. Máy tính phải ánh xạ từng số nguyên với một ký tự phù hợp bằng cách sử dụng mã số để biểu thị các ký tự. Mã số được sử dụng phổ biến nhất là ASCII, viết tắt của American Standard Code for Information Interchange.







Tại sao char là 1 Byte trong ngôn ngữ C

Có nhiều lý do tại sao kiểu dữ liệu char là 1 byte:



1 : Lý do đầu tiên là kích thước char được xác định trước trong thư viện chuẩn C. Bất kể bạn sử dụng trình biên dịch nào, nó sẽ lưu trữ và thao tác các ký tự thông qua các giá trị 1 byte. Lời giải thích có khả năng nhất là một char (nhị phân) tương đương trong bộ ký tự tiêu chuẩn có thể vừa với một byte. Tại thời điểm phát triển ban đầu của C, các tiêu chuẩn được sử dụng nhiều nhất là ASCII cũng như EBCDIC, tương ứng cần mã hóa bảy và tám bit. Do đó, 1 byte là đủ để tượng trưng cho toàn bộ bộ ký tự.



2 : Một chữ cái ASCII thường được biểu thị bằng một ký tự chỉ chứa 256 ký tự. Do đó, bạn chỉ cần chỉ ra phạm vi số từ 0 đến 255 hoặc 8 bit = 1 byte.





3 : Bởi vì C được thiết kế để sử dụng trên các máy tính có 16 bit không gian địa chỉ, nên việc sử dụng nhiều hơn một byte cho các chuỗi được coi là lãng phí.

4 : Có ký tự 1 byte trong ngôn ngữ C giúp lập trình viên dễ dàng chuyển mã của họ sang các máy khác nhau.



5 : Có một số ngôn ngữ lập trình, chẳng hạn như Java và C++ sử dụng các ký tự 1 byte, giúp bạn tương tác giữa các ngôn ngữ khác nhau dễ dàng hơn.

Cách tìm kích thước của kiểu dữ liệu char

Các kích thước của toán tử có thể được sử dụng để xác định kích thước chính xác của một loại hoặc biến trên một nền tảng cụ thể. Biểu thức sizeof(type) trả về kích thước lưu trữ của đối tượng hoặc loại theo byte.

#include
int chính ( ) {
ký tự;
bản inf ( 'Kích thước của ký tự: %d byte \N ' , kích thước của ( ch ) ) ;
trở lại 0 ;
}

Trong đoạn mã trên, chúng tôi sử dụng kích thước của chức năng để tìm kích thước của than trong ngôn ngữ lập trình C, là 1 byte được xác nhận bởi trình biên dịch được hiển thị trong đầu ra bên dưới.

đầu ra

Ưu điểm và nhược điểm của 1 byte char trong ngôn ngữ C

Sau đây là những lợi thế của việc có 1 byte char trong ngôn ngữ C.

  • Nó làm cho ngôn ngữ C hiệu quả hơn.
  • Làm cho ngôn ngữ C nhất quán hơn với các ngôn ngữ khác cũng sử dụng byte cho các kiểu dữ liệu ký tự.
  • Giờ đây, các nhân vật có thể thực hiện các thao tác phức tạp hơn.

Nhược điểm duy nhất mà bạn gặp phải với ký tự 1 byte là bạn sẽ gặp khó khăn khi làm việc với các ký tự kích thước lớn vì một số ngôn ngữ có thể yêu cầu nhiều hơn 256 ký tự.

Phần kết luận

Trong các hướng dẫn ở trên, chúng ta đã thấy rằng kiểu dữ liệu char trong ngôn ngữ C là 1 byte và lý do của việc này là để duy trì tính nhất quán trên tất cả các nền tảng. Bằng cách cố định kích thước ký tự thành 1 byte, các thao tác tương tự có thể được thực hiện trên các máy khác nhau với độ chính xác nhất quán cho dù bạn đang sử dụng phần cứng hay trình biên dịch nào.