Lấy kích thước của mảng trong hàm C++
Không giống như các ngôn ngữ khác, nơi mảng được xác định bởi địa chỉ bộ nhớ bắt đầu, kiểu dữ liệu và độ dài của mảng, trong C, mảng là một con trỏ tương tự tới một vị trí bộ nhớ là địa chỉ bộ nhớ bắt đầu. Chúng ta cần sử dụng toán tử sizeof trong C/C++ để đạt được điều này Show
Ý tưởng chính để lấy độ dài của một mảng trong C hoặc C++ là
Đối với mảng Số nguyên, chúng ta có thể tìm thấy độ dài như sau
Điều này cũng hoạt động với mảng các đối tượng do người dùng xác định (trong C++) và struct (trong C và C++). Chúng tôi sẽ chứng minh điều này trên các ví dụ sau
Chúng ta sẽ đi qua từng ví dụ một cách chi tiết Mảng số nguyênTrong ví dụ này, chúng ta sẽ hiểu cách lấy độ dài của một mảng các số nguyên. Chúng tôi đã định nghĩa một mảng các số nguyên như thế này
Theo đó, chúng tôi tìm thấy độ dài của mảng như sau
Sau đây là ví dụ C hoàn chỉnh
đầu ra
Mảng ký tựTrong ví dụ này, chúng ta sẽ hiểu cách lấy độ dài của một mảng ký tự. Chúng tôi đã định nghĩa một mảng các ký tự như thế này
Theo đó, chúng tôi tìm thấy độ dài của mảng như sau
Sau đây là ví dụ C hoàn chỉnh ________số 8đầu ra
Mảng cấu trúcTrong ví dụ này, chúng ta sẽ hiểu cách lấy độ dài của một mảng cấu trúc. Chúng tôi đã định nghĩa một cấu trúc như thế này 0Chúng tôi đã sử dụng cấu trúc trên để có được một mảng cấu trúc 1Theo đó, chúng tôi tìm thấy độ dài của mảng như sau 2Sau đây là ví dụ C hoàn chỉnh 3đầu ra 4Mảng đối tượng do người dùng định nghĩa trong C++Trong ví dụ này, chúng ta sẽ hiểu cách lấy độ dài của một mảng các đối tượng do người dùng xác định. Chúng tôi đã định nghĩa một lớp do người dùng định nghĩa như thế này 5Chúng tôi đã sử dụng lớp trên để lấy một mảng các đối tượng do người dùng xác định 6Theo đó, chúng tôi tìm thấy độ dài của mảng như sau 7Sau đây là ví dụ C hoàn chỉnh 8đầu ra 9Với điều này, bạn hoàn toàn có thể lấy được độ dài của bất kỳ mảng nào trong C và C++ bằng cách sử dụng toán tử sizeof. Vui thích Chương trình tính độ dài của mảng trong C sử dụng toán tử sizeof với các bước được giải thích. Hai ví dụ chương trình trình diễn sử dụng mảng int và mảng char Hãy xem xét ví dụ về một mảng int được đưa ra dưới đây. Độ dài của mảng là 6, hay nói cách khác, số phần tử trong mảng int là 6. Đây là những gì chương trình c sẽ tính toán mảng int[] = {2,4,6,8,9,4}; HỢP LÝ
Độ dài mảng = kích thước của mảng/kích thước của 1 int GHI CHÚ. Kích thước của các loại dữ liệu thay đổi theo nền tảng. Bạn có thể xem ở đây kích thước của nhiều loại dữ liệu trong C với mã ví dụ Chương trình tính độ dài mảng trong C 0Đầu ra. Hãy xem thêm một ví dụ về chương trình c để tính độ dài của mảng char Ví dụ về độ dài của mảng char trong CTrong chương trình dưới đây có 5 phần tử trong mảng char. Khi bạn chia nó với kích thước của một kiểu dữ liệu char ( 1 byte) thì kích thước của mảng sẽ là 5 Chúng ta có thể tính kích thước của mảng bên trong hàm không?Bên trong hàm ar là một con trỏ nên toán tử sizeof sẽ trả về độ dài của một con trỏ. Cách duy nhất để tính toán nó là biến ar thành toàn cầu và hoặc thay đổi tên của nó. Cách dễ nhất để xác định độ dài là size(array_name)/(size_of(int) . Một điều khác bạn có thể làm là chuyển tính toán này vào hàm.
Làm cách nào để in kích thước mảng trong C?Có thể tìm thấy một số phần tử có trong mảng bằng cách tính độ dài của mảng. . BƯỚC 1. BẮT ĐẦU BƯỚC 2. KHỞI TẠO mảng[] = {1, 2, 3, 4, 5} BƯỚC 3. chiều dài = sizeof(arr)/sizeof(arr[0]) BƯỚC 4. IN "Số phần tử có trong mảng đã cho. " bằng cách gán độ dài BƯỚC 5. TRẢ LẠI 0 BƯỚC 6. CHẤM DỨT Chúng ta có thể lấy kích thước của mảng từ người dùng trong C không?Trong C , không thể xác định mảng với kích thước do người dùng xác định theo cách này. Một số phương ngữ của C có các mảng có độ dài thay đổi, đáng chú ý là C99 (và GCC chấp nhận chúng. ) |