Skip to main content

Một mảng trống là gì?

Định nghĩa chính xác về những gì một mảng trống trong lập trình máy tính không phải lúc nào cũng rõ ràng.Một cách giải thích phổ biến là một mảng trống nếu nó có các phần tử bằng không, mặc dù không phải tất cả các ngôn ngữ máy tính đều cho phép một mảng được khai báo theo cách này.Một cách giải thích khác của một mảng trống là một mảng trong đó tất cả các yếu tố dữ liệu là null, không hoặc không xác định, tùy thuộc vào ngôn ngữ lập trình đang được sử dụng.Một số ngôn ngữ tạo ra sự khác biệt giữa một mảng trống và một mảng chưa được phân bổ và bằng null, mặc dù các ngôn ngữ khác có thể coi một mảng không được phân bổ là một mảng trống. Có những trường hợp cụ thể trong đó một mảngCó thể được khai báo trong một chương trình không có phần tử, có nghĩa là nó không thể giữ bất kỳ dữ liệu nào và được coi là một mảng trống.Đây thường là các mảng động thường có thể làm tăng số lượng phần tử, bởi vì một mảng không có phần tử về cơ bản là không thể sử dụng được.Trong các ngôn ngữ lập trình hướng đối tượng, một mảng trống có thể được khai báo bên trong một đối tượng trình bao bọc lớp mảng đang duy trì cấu trúc dữ liệu mảng trong nội bộ.Trong một số ngôn ngữ kịch bản và meta, một mảng trống được truyền dưới dạng tham số cho các chức năng được điền hoặc gán các giá trị từ nguồn dữ liệu khác., hoặc được lấp đầy với các giá trị cho thấy không có dữ liệu.Điều này là do trong các ngôn ngữ như C, khi không gian bộ nhớ cho một mảng được phân bổ, nó vẫn chứa bất kỳ dữ liệu còn lại nào từ các chương trình hoặc tệp trước đó có thể chiếm không gian.Để làm trống một mảng như thế này, mỗi phần tử phải được lặp qua và sau đó đặt thành một giá trị trung tính.Giá trị này có thể là mã tiêu chuẩn thực tế của Mỹ để trao đổi thông tin (ASCII) giá trị bằng 0, khác với ký tự chữ số bằng 0.Nó cũng có thể là giá trị cho null, có nghĩa là không có giá trị, giống như ASCII 0 trong một số ngôn ngữ. Mục đích của việc có một mảng trống là một phần cho hiệu quả trong một số chương trình.Bằng cách có một mảng trống, chương trình có thể tránh thực hiện các tính toán vô nghĩa hoặc không chính xác trên mảng.Nó cũng có thể ngăn một chương trình truy cập một mảng không có địa chỉ bộ nhớ hợp lệ, gây ra lỗi truy cập bộ nhớ có thể chấm dứt chương trình.Một số ngôn ngữ máy tính có các chức năng thư viện hoặc lớp tích hợp có thể dễ dàng biết nếu một mảng thực sự trống theo định nghĩa ngôn ngữ.