Bài giảng Kỹ thuật lập trình cơ bản (C++): Chương 6 - ThS. Trần Nguyễn Anh Chi
lượt xem 4
download
Bài giảng Kỹ thuật lập trình cơ bản (C++) - Chương 6 trang bị cho người học những hiểu biết về con trỏ và chuỗi. Thông qua chương này người học sẽ tìm hiểu một số nội dung cơ bản như: Địa chỉ và toán tử lấy địa chỉ, con trỏ, quy tắc sử dụng con trỏ, chuỗi ký tự, một số thao tác trên chuỗi ký tự,... Mời các bạn cùng tham khảo.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Kỹ thuật lập trình cơ bản (C++): Chương 6 - ThS. Trần Nguyễn Anh Chi
- Kỹ thuật lập trình cơ bản Chương 6: Con trỏ và chuỗi Trường Cao đẳng Công nghệ Thông Tin Khoa Công nghệ Thông Tin CHƯƠNG 6 CON TRỎ và CHUỖI PHẦN 1: CON TRỎ GV: ThS. TRẦN NGUYỄN ANH CHI TpHCM, 02/2011 Địa chỉ và toán tử lấy địa chỉ Biến Liên quan đến biến: tên biến, kiểu biến, giá trị của biến Địa chỉ của biến là số thứ tự của byte đầu tiên trong dãy các byte mà bộ nhớ cấp phát. Để xem địa chỉ của biến, sử dụng toán tử lấy địa chỉ & Ví dụ int a = 5; biến có tên a, thuộc kiểu int và có giá trị = 5 địa chỉ của biến a: &a 2 GV: ThS. Trần Nguyễn Anh Chi 1
- Kỹ thuật lập trình cơ bản Chương 6: Con trỏ và chuỗi Con trỏ Khái niệm Con trỏ là một biến dùng để chứa địa chỉ. Vì có nhiều kiểu biến chứa trong các loại địa chỉ khác nhau, nên có nhiều kiểu con trỏ khác nhau: kiểu int, kiểu float… Phải khai báo biến con trỏ trước khi sử dụng Cú pháp *; 3 Con trỏ (tt) Ví dụ int x, y, *px, *py, *pz; float z; //x, y là 2 biến số nguyên //px, py, pz là 3 con trỏ kiểu số nguyên //z là biến số thực Khi đó, các câu lệnh sau sẽ có ý nghĩa: px = &x; //gán địa chỉ của biến x cho con trỏ px py = &y; //gán địa chỉ của biến y cho con trỏ py pz = &z; //sai??? 4 GV: ThS. Trần Nguyễn Anh Chi 2
- Kỹ thuật lập trình cơ bản Chương 6: Con trỏ và chuỗi Quy tắc sử dụng con trỏ Sử dụng tên con trỏ Con trỏ cũng là một biến, nên khi tên của con trỏ xuất hiện ở đâu thì giá trị của nó cũng sẽ được sử dụng ở đó. Khi tên con trỏ ở bên trái của một toán tử gán, thì giá trị của biểu thức bên phải phải là một địa chỉ để gán cho con trỏ này. Ví dụ: int a, b, *p, *q, *w; p = &a; //gán địa chỉ của biến a cho con trỏ p q = p; //gán giá trị của con trỏ p cho con trỏ q w = b; //sai??? 5 Quy tắc sử dụng con trỏ (tt) Sử dụng dạng khai báo của con trỏ Với các khai báo và phép gán: int x, y, z, *px, *py; px = &x; //gán địa chỉ của biến x cho con trỏ px py = &y; //gán địa chỉ của biến y cho con trỏ py Khi đó, cách viết x và *px tương đương nhau trong mọi ngữ cảnh. y = 3*x + z; *py = 3*x + z; *py = 3*(*px) + z; Kết luận: khi biết được địa chỉ của một biến, không những có thể sử dụng giá trị của nó, mà còn có thể gán cho nó một giá trị mới. 6 GV: ThS. Trần Nguyễn Anh Chi 3
- Kỹ thuật lập trình cơ bản Chương 6: Con trỏ và chuỗi Trường Cao đẳng Công nghệ Thông Tin Khoa Công nghệ Thông Tin CHƯƠNG 6 CON TRỎ và CHUỖI PHẦN 2: CHUỖI GV: ThS. TRẦN NGUYỄN ANH CHI TpHCM, 02/2011 Chuỗi ký tự Khái niệm Kiểu char chỉ chứa được một ký tự. Để lưu trữ một chuỗi (nhiều ký tự) ta sử dụng mảng (một chiều) các ký tự. Chuỗi ký tự kết thúc bằng ký tự ‘\0’ (null) Độ dài chuỗi = kích thước mảng – 1 Ví dụ char hoten[30];//chua 29 ky tu char mssv[15]; //chua 14 ký tu 8 GV: ThS. Trần Nguyễn Anh Chi 4
- Kỹ thuật lập trình cơ bản Chương 6: Con trỏ và chuỗi Chuỗi ký tự (tt) Khai báo Cách 1: char []; Ví dụ: char hoten[30];//chua 29 ky tu char mssv[15]; //chua 14 ký tu Cách 2: char *; = new char; Ví dụ: char *hoten; hoten = new char; 9 Chuỗi ký tự (tt) Khởi tạo Độ dài cụ thể: char s[12] = {„L‟,‟a‟,‟p‟,‟ „,‟t‟,‟r‟,‟i‟,‟n‟,‟h‟,‟\0‟}; char s[12] = “Lap trinh”; //tu dong them „\0‟ ‘L’ ‘a’ ‘p’ ‘ ’ ‘t’ ‘r’ ‘i’ ‘n’ ‘h’ ‘\0’ Tự động xác định độ dài: char s[] = {„L‟,‟a‟,‟p‟,‟ „,‟t‟,‟r‟,‟i‟,‟n‟,‟h‟,‟\0‟}; char s[] = “Lap trinh”; //tu dong them „\0‟ ‘L’ ‘a’ ‘p’ ‘ ’ ‘t’ ‘r’ ‘i’ ‘n’ ‘h’ ‘\0’ 10 GV: ThS. Trần Nguyễn Anh Chi 5
- Kỹ thuật lập trình cơ bản Chương 6: Con trỏ và chuỗi Chuỗi ký tự (tt) Nhập / xuất chuỗi Sử dụng cách nhập xuất thông thường: cin và cout Chỉ nhận được các ký tự từ bàn phím cho đến khi nhận ký tự khoảng trắng hay ký tự xuống dòng. Chuỗi kết quả không bao gồm ký tự khoảng trắng hay xuống dòng. 11 Chuỗi ký tự (tt) 12 GV: ThS. Trần Nguyễn Anh Chi 6
- Kỹ thuật lập trình cơ bản Chương 6: Con trỏ và chuỗi Chuỗi ký tự (tt) Sử dụng hàm gets() và puts() Nhận được trọn vẹn chuỗi nhập vào. 13 Một số thao tác trên chuỗi ký tự Lấy chiều dài chuỗi int *strlen(char *s) Trả về chiều dài của chuỗi. 14 GV: ThS. Trần Nguyễn Anh Chi 7
- Kỹ thuật lập trình cơ bản Chương 6: Con trỏ và chuỗi Một số thao tác (tt) Sao chép chuỗi char *strcpy(char *dest, char *source) Sao chép từ chuỗi source vào chuỗi dest. 15 Một số thao tác (tt) So sánh chuỗi (không phân biệt hoa/thường) int *strcmp(char *s1, char *s2) So sánh 2 chuỗi s1 và s2. 16 GV: ThS. Trần Nguyễn Anh Chi 8
- Kỹ thuật lập trình cơ bản Chương 6: Con trỏ và chuỗi Một số thao tác (tt) Nối chuỗi char *strcat(char *dest, char *source) Nối chuỗi source vào chuỗi dest. 17 GV: ThS. Trần Nguyễn Anh Chi 9
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Kỹ thuật lập trình Hook
17 p | 123 | 36
-
Bài giảng Kỹ thuật lập trình: Ngôn ngữ lập trình C
7 p | 167 | 20
-
Bài giảng Kỹ thuật lập trình: Chương V - Lưu Hồng Việt
19 p | 128 | 15
-
Bài giảng Kỹ thuật lập trình - Chương 1: Nhập môn về máy tính và lập trình
16 p | 145 | 8
-
Bài giảng Kỹ thuật lập trình cơ bản: Chương 0 – Trần Minh Thái
17 p | 115 | 7
-
Bài giảng Kỹ thuật lập trình: Bài 1 - Phạm Đình Sắc
9 p | 130 | 7
-
Bài giảng Kỹ thuật lập trình: Chương 0 - Trường Đại học Ngoại ngữ - Tin học TP.HCM
7 p | 15 | 6
-
Bài giảng Kỹ thuật lập trình: Bài 1 - TS. Đào Trung Kiên
18 p | 109 | 6
-
Bài giảng Kỹ thuật lập trình - TS. Vũ Hương Giang
8 p | 117 | 5
-
Bài giảng Kỹ thuật lập trình: Bài 2 - Phạm Đình Sắc
7 p | 117 | 5
-
Bài giảng Kỹ thuật lập trình: Chương 1 - Trần Quang Hải Bằng
15 p | 63 | 3
-
Bài giảng Kỹ thuật lập trình nâng cao: Chương 3 - Trần Minh Thái
14 p | 38 | 3
-
Bài giảng Kỹ thuật lập trình nâng cao: Chương 4 - Trần Minh Thái
11 p | 24 | 2
-
Bài giảng Kỹ thuật lập trình: Mở đầu - TS. Vũ Hương Giang
8 p | 36 | 2
-
Bài giảng Kỹ thuật lập trình: Giới thiệu môn học - ThS. Lê Thị Ngọc Hạnh
9 p | 82 | 2
-
Bài giảng Kỹ thuật lập trình: Giới thiệu môn học - ThS. Đặng Bình Phương
7 p | 0 | 0
-
Bài giảng Kỹ thuật lập trình: Danh sách liên kết - ThS. Đặng Bình Phương
20 p | 2 | 0
-
Bài giảng Kỹ thuật lập trình: Chuỗi ký tự - ThS. Đặng Bình Phương
20 p | 1 | 0
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn