Khai báo và định nghĩa biến
Biến là một ô nhớ được đặt tên để lưu trữ dữ liệu của một kiểu cụ thể. Để chương trình có thể vận hành một biến, lập trình viên phải khai báo và/hoặc định nghĩa biến đó trong mã nguồn. Trong trường hợp chung, các thuật ngữ khai báo và định nghĩa có nghĩa khác nhau liên quan đến các thành phần của chương trình, trong khi chúng thực tế luôn trùng khớp với các biến. Những điều phức tạp này sẽ được đề cập khi chúng ta tìm hiểu về các hàm, lớp và các biến đặc biệt (bên ngoài). Ở đây, chúng ta sẽ sử dụng cả hai thuật ngữ này thay thế cho nhau, cùng với 'mô tả' như một thuật ngữ khái quát.
Sẽ an toàn khi cho rằng một khai báo chứa mô tả về một phần tử chương trình với tất cả các thuộc tính cần thiết để được sử dụng trong chương trình. Tuy nhiên, định nghĩa chứa triển khai cụ thể của phần tử này, tương ứng với khai báo.
Khai báo cho phép trình biên dịch kết nối tất cả các thành phần của chương trình. Dựa trên các định nghĩa, trình biên dịch tạo ra mã thực thi.
Trong trường hợp của các biến, khai báo của chúng thực tế luôn đóng vai trò là định nghĩa của chúng, vì nó đảm bảo phân bổ bộ nhớ và diễn giải nội dung của chúng theo các kiểu của chúng (đây chính xác là một triển khai của một biến). Ngoại lệ duy nhất là khai báo các biến bằng từ extern
(để biết thêm chi tiết, hãy xem phần Biến ngoài ).
Chỉ khi có mô tả về biến, bạn mới có thể sử dụng các câu lệnh đặc biệt để nhập giá trị vào biến đó, đọc giá trị và tham chiếu đến tên biến để di chuyển biến đó từ phần này của chương trình sang phần khác.
Trong trường hợp đơn giản nhất, câu lệnh mô tả một biến sẽ như sau:
type name;
Ở đây, tên phải đáp ứng các yêu cầu xây dựng định danh. Là một kiểu, bạn có thể chỉ định bất kỳ kiểu nhúng nào mà chúng ta đã xem xét trong phần trước hoặc một số kiểu tùy chỉnh khác – chúng ta sẽ tìm hiểu một chút về cách tạo chúng sau. Ví dụ, biến số nguyên i được khai báo như sau:
int i;
Nếu cần, bạn có thể mô tả nhiều biến cùng loại cùng lúc. Trong trường hợp này, tên của chúng được chỉ định trong câu lệnh, phân tách bằng dấu phẩy.
int i, j, k;
Một yếu tố quan trọng là vị trí trong chương trình, nơi câu lệnh được đặt, chứa mô tả biến. Điều này ảnh hưởng đến thời gian tồn tại của biến và khả năng truy cập của biến từ các phần khác nhau của chương trình.