Khởi tạo giá trị ban đầu cho cấu trúc

Một phần của tài liệu Tài liệu học tập môn tin cơ sở (Trang 153 - 155)

CHƯƠNG 8 : KIỂU DỮ LIỆU CẤU TRÚC

8.4. Thao tác trên biến cấu trúc

8.4.1. Khởi tạo giá trị ban đầu cho cấu trúc

Khởi tạo biến có cấu trúc đơn

Biến cấu trúc được khai báo theo các cách sau:

- Nếu định nghĩa không dùng typedef

struct <Tên cấu trúc> <tên biến>;

- Nếu định nghĩa dùng typedef

<Tên kiểu dữ liệu cấu trúc> <tên biến>;

Ngoài ra, ta có thể khởi tạo các giá trị cho các thuộc tính của cấu trúc ngay khi khai báo bằng các cú pháp sau:

- Nếu định nghĩa không dùng typedef

struct <Tên cấu trúc> <tên biến> = { <giá trị thuộc tính 1>, <giá trị thuộc tính 2>, <giá trị thuộc tính n> }; Hoặc:

// Nếu định nghĩa dùng typedef

<Tên kiểu dữ liệu cấu trúc> <tên biến> = { <giá trị thuộc tính 1>,

146

<giá trị thuộc tính n> };

Trong đó:

Giá trị thuộc tính: là giá trị khởi đầu cho mỗi thuộc tính, có kiểu phù hợp với kiểu dữ liệu của thuộc tính. Mỗi giá trị của thuộc tính được phân cách bằng dấu phẩy “,”.

Ví dụ 8.9: Minh họađịnh nghĩa cấu trúc: typedef struct {

char tennv[20]; // Tên nhân viên int tuoi; // Tuổi nhân viên

char chuvu[20]; // Chức vụ của nhân viên

float luong; // Lương của nhân viên

} Nhanvien;

Có thể khai báo và khởi tạo cho một biến như sau:

Nhanvien nv1 = {

“Nguyen Van A”,

27,

“To truong”,

8000000 };

Khởi tạo các biến có cấu trúc lồng nhau

Trong trường hợp các cấu trúc lồng nhau, phép khởi tạo cũng thực hiện như thông thường với phép khởi tạo cho tất cả các cấu trúc con.

Ví dụ 8.10: Với khai báo cấu trúc như sau:

typedef struct { int day; int month; int year; } Date; và: typedef struct {

147 Date ngsinh; // Ngày sinh của nhân viên

char chucvu [20]; // Chức vụ của nhân viên

float luong; // Lương của nhân viên

} Nhanvien;

Thì khai báo và khởi tạo một biến có kiểu Nhanvien có thể thực hiện như sau:

Nhanvien nv1 = {

“Nguyen Van A”,

{15, 05, 2000}, // Khởi tạo cấu trúc con “To truong”,

8000000 };

Một phần của tài liệu Tài liệu học tập môn tin cơ sở (Trang 153 - 155)

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

(180 trang)