const - biến hằng

Giới thiệu

Với một từ khóa "const" nằm trước một khai báo biến, bạn sẽ làm cho biến này thành một biến chỉ có thể đọc "read-only". Nếu bạn có "lỡ lầm" thay đổi giá trị của một biến hằng thì đừng lo lắng, chương trình dịch sẽ báo lỗi cho bạn!

Các biến có từ khóa const vẫn tuân theo phạm vi hiệu lực của biến. Ngoài cách sử dụng const để khai báo một biến hằng, ta còn có thể sử dụng #define để khai báo một hằng số hoặc hằng chuỗi. Tuy nhiên sử dụng const được ưa chuộng hơn trong lập trình, vì khả năng "tuân theo" phạm vi hiệu lực của biến! Còn #define hoạt động như thế nào thì bạn có thể xem thêm bài viết của có tại đây.

Ví dụ

const float pi = 3.14;
float x;

// ....

x = pi * 2;    // bạn có thể dụng hằng số pi trong tính toán - vì đơn giản bạn chỉ đọc nó

pi = 7;        // lỗi ! bạn không thể thay đổi giá trị của một hằng số

Dùng const hay dùng #define ?

Để khai báo một biến hằng số (nguyên / thực) hoặc hằng chuỗi thì bạn có thể dùng cả 2 cách đều được. Tuy nhiên, đẻ khai báo một biến mảng (array) là một hằng số bạn chỉ có thể sử dụng từ khóa const. Và đây là một lý do nữa khiến const được dùng nhiều và được ưa chuộng hơn #define!

lên
9 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

Arduino Nano - Nhỏ, tiện lợi, mang trên mình tinh hoa của Arduino Uno

Điều đầu tiên tớ muốn chia sẻ với các bạn khi tiếp xúc với Arduino Nano, đó là sự tiện dụng, đơn giản, có thể lập trình trực tiếp bằng máy tính (như Arduino Uno R3) và đặc biệt hơn cả đó là kích thước của nó. Kích thước của Arduino Nano cực kì nhỏ chỉ tương đương đồng 2 nghìn gấp lại 2 lần thôi, rất thích hợp cho các newbie, vì giá rẻ hơn Arduino Uno nhưng dùng được tất cả các thư việt của mạch này. Hôm nay, tớ viết bài này nhằm mục đích giới thiệu về mạch Arduino Nano và các thông số kĩ thuật, cùng với đó là những gợi ý ứng dụng khi bắt đầu với mạch này.

lên
17 thành viên đã đánh giá bài viết này hữu ích.

Vấn đề năng lượng cho board Intel Edison với Mini breakout

Yay, sau khi đọc bài viết giới thiệu về Intel Edison, mình cảm thấy rất phấn khích. Nhóm của mình cũng đang chuẩn bị làm một dự án với Intel Edison trong đó có vấn đề về việc xử dụng pin, qua bài viết này mình sẽ giúp các bạn có một cái nhìn rõ hơn về vấn đề pin với Intel Edison.

lên
13 thành viên đã đánh giá bài viết này hữu ích.