1. Trang chủ
  2. » Công Nghệ Thông Tin

Mảng con trỏ và tham chiếu trong lập trình C

10 4,7K 85
Tài liệu đã được kiểm tra trùng lặp

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 10
Dung lượng 125 KB

Nội dung

Mảng con trỏ và tham chiếu trong lập trình C

1Khoa Công Nghệ Thông Tin & Truyền ThôngĐại Học Cần ThơMẢNG - CON TRỎ - THAM CHIẾUCHƯƠNG 5: 2Mảng, Con Trỏ, Tham ChiếuMục tiêuGiới thiệu các cách sử dụng mảng, con trỏ, tham chiếu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 3MảngMảng (array)Gồm một tập các đối tượng cùng kiểu đượ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 mảng đa chiềuChương 5 4Biến MảngĐược định nghĩa bằng cách đặc tả kích thước mảng 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 5Bộ Khởi Tạo MảngMỗi mảng có một bộ khởi tạo mảngVí dụChuỗi là một mảng ký tựVí dụ: so sánh sự khác nhau củachar str[] = "HELLO"; 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 6Mảng Đa 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 20int 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 7Con TrỏCon trỏ đơn giản chỉ là địa chỉ của một vị trí bộ nhớ cung cấp cách gián tiếp để truy xuất dữ liệu trong bộ nhớVí dụ it num = 10;int *ptr1 = &num;cout << *ptr1;10num10001000ptr12000Chương 5 8Bộ Nhớ Động - TĩnhBộ nhớ động (heap)Vùng nhớ được cấp phát động trong thời gian thực thiBộ nhớ tính (stack)Vùng nhớ được sử dụng để lưu trữ các biến toàn cục lời gọi hàm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 9Tham ChiếuMột tham chiếu (reference) là một biệt hiệu (alias) cho một đối tượng. Ví dụ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 10Truyề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;}int 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 [...]... 5 Bộ Khởi Tạo Mảng  Mỗi mảng c một bộ khởi tạo mảng  Ví dụ  Chuỗi là một mảng ký tự  Ví dụ: so sánh sự kh c nhau c a char str[] = "HELLO"; char str[] = {'H', 'E', 'L', 'L', 'O'}; int nums[3] = {5, 10, 15}; Bộ khởi tạo mảng int nums[3] = {5, 10}; nums[2] = ? int nums[ ] = {5, 10, 15}; Kích thư c mảng ? Chương 5 . dụng mảng, con trỏ, và tham chiếu 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. 1Khoa C ng Nghệ Thông Tin & Truyền ThôngĐại H c Cần ThơMẢNG - CON TRỎ - THAM CHIẾUCHƯƠNG 5: 2Mảng, Con Trỏ, Tham Chiếu M c tiêuGiới thiệu c c cách

Ngày đăng: 17/08/2012, 10:32

TỪ KHÓA LIÊN QUAN

w