Storage Class (Lớp lưu trữ)

Một phần của tài liệu Bài giảng Xây dựng các hệ thống nhúng: Phần 2 (Trang 54 - 55)

3. The OS must be fast

3.5.3 Storage Class (Lớp lưu trữ)

Lớp lưu trữ (Storage Class) định nghĩa phạm vi và vũng đời của biến và/hoặc cỏc hàm bờn trong một chương trỡnh C. Chỳng thường đứng trước kiểu dữ liệu mà chỳng tỏc động. Dưới đõy là cỏc lớp lưu trữ cú thể được sử dụng trong C:

• auto

• register

• static

• extern

Lớp lưu trữ auto: Lớp lưu trữ auto là lớp lưu trữ mặc định cho tất cả cỏc biến cục bộ:

{

int diemthi; auto int diemthi; }

Vớ dụ trờn để định nghĩa hai biến trong cựng một lớp lưu trữ, auto cú thể được sử dụng bờn trong hàm, vớ dụ biến cục bộ.

Lớp lưu trữ register: Lớp lưu trữ register cú thể được sử dụng để định nghĩa biến cục bộ và cú thể được lưu trữ trong một vựng đăng ký thay vỡ RAM. Điều này nghĩa là biến này cú cỡ tối đa tương đương với cỡ đăng ký.

{

register int hocphi; }

Lớp lưu trữ static: Lớp lưu trữ static hướng dẫn trỡnh biờn dịch giữ cỏc giỏ trị biến cục bộ tồn tại trong thời gian sống của chương trỡnh thay vỡ việc tạo ra và hủy nú mỗi lần chạy qua phạm vi đú. Do đú, tạo một biến cục bộ static cho phộp chỳng lưu trữ cỏc giỏ trị với cỏc hàm gọi. Lớp static này cú thể được ỏp dụng cho biến toàn cục. Khi việc này diễn ra, nú gõy ra phạm vi của biến được

193

giới hạn trong file mà nú khai bỏo. Trong lập trỡnh “C”, khi static được sử dụng ứng với lớp, nú dẫn đến chỉ cú một bản copy của lớp khai bỏo được chia sẻ bởi tất cả cỏc đối tượng sử dụng lớp này.

Lớp lưu trữ extern: Lớp lưu trữ extern được sử dụng để đưa tham chiếu đến cỏc biến toàn cục mà được nhỡn thấy bởi tất cả cỏc file chương trỡnh. Khi bạn cú nhiều file và bạn định nghĩa cỏc biến cục bộ hoặc hàm, nú sẽ được sử dụng ở cỏc file khỏc. Để hiểu vấn đề này, extern được sử dụng để khai bỏo biến toàn cục hoặc hàm ở file khỏc.

Một phần của tài liệu Bài giảng Xây dựng các hệ thống nhúng: Phần 2 (Trang 54 - 55)

Tải bản đầy đủ (PDF)

(196 trang)