Bai 06 -Mạng , con trỏ, tham chiếu

10 873 4
Bai 06 -Mạng , con trỏ, tham chiếu

Đang tải... (xem toàn văn)

Thông tin tài liệu

Bai 06 -Mạng , con trỏ, tham chiếu

Bộ môn Khoa học máy tínhKhoa Công nghệ thông tinHọc viện Kỹ thuật quân sựChương 5: Mảng, con trỏ và tham chiếu1MẢNG - CON TRỎ - THAM CHIẾUCHƯƠNG 5: Mảng, Con Trỏ, Tham ChiếuChương 5: Mảng, con trỏ và tham chiếu21. Mục tiêuGiới thiệu các cách sử dụng mảng, con trỏ,tham chiếu2. Nội dungMảng một chiều, nhiều chiều, bộ nhớ tĩnhCon trỏ, tính toán con trỏ, bộ nhớ độngCon trỏ hàm, tham chiếuChương 5 MảngChương 5: Mảng, con trỏ và tham chiếu31. Mảng (array)Gồm một tập các đối tượng cùng kiểu và được sắp xếp liên tiếp trong bộ nhớ.Mỗi phần tử mảng được xác định bởi một chỉ số biểu thị vị trí của phần tử trong mảng.Phần tử đầu tiên của mảng luôn có chỉ số 0 .Số lượng phần tử trong mảng được gọi là kích thước của mảng (cố định; xác định trước) .Gồm mảng một chiều và mảng đa chiều.Chương 5 Biến MảngChương 5: Mảng, con trỏ và tham chiếu4Được định nghĩa bằng cách đặc tả kích thước mảng và kiểu các phần tử của nó •Ví dụ: int heights[10];Truy xuất 1 phần tử qua chỉ số mảng•Ví dụ: heights[0]= 210; cout<< heights[3];Truy xuất phần tử không tồn tại  lỗi vượt ngoài biên•Ví dụ: cout<<heights[-1]; cout<<heights[10];Chương 5 Bộ Khởi Tạo MảngChương 5: Mảng, con trỏ và tham chiếu51. Mỗi mảng có một bộ khởi tạo mảng2. Ví dụ3. Chuỗi là một mảng ký tự4. Ví dụ: so sánh sự khác nhau của.char str[] = "HELLO"; và char str[] = {'H', 'E', 'L', 'L', 'O'};int nums[3] = {5, 10, 15};Bộ khởi tạo mảngint nums[3] = {5, 10};nums[2] = ?int nums[ ] = {5, 10, 15};Kích thước mảng ? Chương 5 Mảng Nhiều ChiềuMùa xuân Mùa hè Mùa thu Mùa đôngSydney 26 34 22 17Melbourne 24 32 19 13Brisbane 28 38 25 20Chương 5: Mảng, con trỏ và tham chiếu6int seasonTemp[3][4]; .32 19 13 28 38 25 .26 34 22 17 24 20First row Second row Third rowhàng đầuhàng haihàng baCách tổ chức trong bộ nhớChương 5 Con TrỏChương 5: Mảng, con trỏ và tham chiếu71. Con trỏ đơn giản chỉ là địa chỉ của một vị trí bộ nhớ và cung cấp cách gián tiếp để truy xuất dữ liệu trong bộ nhớ2. Ví dụ it num = 10;int *ptr1 = &num;cout << *ptr1;10num10001000ptr12000Chương 5 Bộ Nhớ Động - TĩnhChương 5: Mảng, con trỏ và tham chiếu81. Bộ nhớ động (heap)Vùng nhớ được cấp phát động trong thời gian thực thi2. Bộ nhớ tính (stack)Vùng nhớ được sử dụng để lưu trữ các biến toàn cục và lời gọi hàm3. Hai toán tử được sử dụngnew: cấp phátdelete: thu hồivoid Foo (void){ int *ptr = new int; char *str = new char[10]; // . delete ptr; delete [ ]str; }Chương 5 Tham ChiếuChương 5: Mảng, con trỏ và tham chiếu91. Một tham chiếu (reference) là một biệt hiệu (alias) cho một đối tượng. 2. Ví dụ3. Ghi chúMột tham chiếu phải luôn được khởi tạo khi nó được định nghĩaCó thể khởi tạo tham chiếu tới một hằng double num1 = 3.14;double &num2 = num1; 3.14num11000num2Chương 5 Truyền Bằng Trị - Con Trỏ - Tham Chiếu1 2 3 4 56789101112131415161718 // Truyền bằng trị (đối tượng)void Swap1 (int x, int y){int temp = x;x = y;y = temp;}// Truyền bằng địa chỉ (con trỏ)void Swap2 (int *x, int *y){int temp = *x;*x = *y;*y = temp;}// Truyền bằng tham chiếuvoid Swap3 (int &x, int &y){int temp = x;x = y;y = temp;}Chương 5: Mảng, con trỏ và tham chiếu10int main (void){ int i = 10, j = 20; Swap1(i, j); cout << i << ", " << j << '\n'; Swap2(&i, &j); cout << i << ", " << j << '\n'; Swap3(i, j); cout << i << ", " << j << '\n';}Chương 5 . dụng mảng, con tr , và tham chiếu2 . Nội dungMảng một chiều, nhiều chiều, bộ nhớ tĩnh Con tr , tính toán con tr , bộ nhớ động Con trỏ hàm, tham chiếuChương. sựChương 5: Mảng, con trỏ và tham chiếu1 MẢNG - CON TRỎ - THAM CHIẾUCHƯƠNG 5: Mảng, Con Tr , Tham ChiếuChương 5: Mảng, con trỏ và tham chiếu2 1. Mục tiêuGiới

Ngày đăng: 25/10/2012, 16:06

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan