Các kiểu dữ liệu Objective-C

Trong ngôn ngữ lập trình Objective-C, kiểu dữ liệu đề cập đến một hệ thống mở rộng được sử dụng để khai báo các biến hoặc hàm thuộc các kiểu khác nhau. Kiểu của một biến xác định bao nhiêu không gian mà nó chiếm trong bộ nhớ và cách diễn giải mẫu bit được lưu trữ.

Các loại trong Objective-C có thể được phân loại như sau:

Sr.No. Loại & Mô tả
1

Basic Types −

Chúng là kiểu số học và bao gồm hai kiểu: (a) kiểu số nguyên và (b) kiểu dấu phẩy động.

2

Enumerated types −

Chúng lại là các kiểu số học và chúng được sử dụng để định nghĩa các biến chỉ có thể được gán các giá trị nguyên rời rạc nhất định trong suốt chương trình.

3

The type void −

Void xác định kiểu chỉ ra rằng không có giá trị nào.

4

Derived types −

Chúng bao gồm (a) Kiểu con trỏ, (b) Kiểu mảng, (c) Kiểu cấu trúc, (d) Kiểu liên kết và (e) Kiểu hàm.

Các kiểu mảng và kiểu cấu trúc được gọi chung là kiểu tổng hợp. Kiểu của một hàm chỉ định kiểu của giá trị trả về của hàm. Chúng ta sẽ thấy các loại cơ bản trong phần sau trong khi các loại khác sẽ được đề cập trong các chương sắp tới.

Các loại số nguyên

Bảng sau cung cấp cho bạn thông tin chi tiết về các kiểu số nguyên tiêu chuẩn với kích thước lưu trữ và phạm vi giá trị của nó:

Kiểu Kích thước lưu trữ Phạm vi giá trị
char 1 byte -128 đến 127 hoặc 0 đến 255
ký tự không dấu 1 byte 0 đến 255
ký char 1 byte -128 đến 127
int 2 hoặc 4 byte -32,768 đến 32,767 hoặc -2,147,483,648 đến 2,147,483,647
int không dấu 2 hoặc 4 byte 0 đến 65,535 hoặc 0 đến 4,294,967,295
ngắn 2 byte -32,768 đến 32,767
không dấu ngắn 2 byte 0 đến 65,535
Dài 4 byte -2.147.483.648 đến 2.147.483.647
không ký lâu 4 byte 0 đến 4,294,967,295

Để có được kích thước chính xác của một loại hoặc một biến trên một nền tảng cụ thể, bạn có thể sử dụng sizeofnhà điều hành. Biểu thức sizeof (type) mang lại kích thước lưu trữ của đối tượng hoặc kiểu tính bằng byte. Sau đây là một ví dụ để lấy kích thước của kiểu int trên bất kỳ máy nào:

#import <Foundation/Foundation.h>

int main() {
   NSLog(@"Storage size for int : %d \n", sizeof(int));
   return 0;
}

Khi bạn biên dịch và thực thi chương trình trên, nó tạo ra kết quả sau trên Linux:

2013-09-07 22:21:39.155 demo[1340] Storage size for int : 4

Các loại dấu chấm động

Bảng sau cung cấp cho bạn thông tin chi tiết về các loại dấu phẩy động tiêu chuẩn với kích thước lưu trữ và phạm vi giá trị và độ chính xác của chúng -

Kiểu Kích thước lưu trữ Phạm vi giá trị Độ chính xác
Phao nổi 4 byte 1,2E-38 đến 3,4E + 38 6 chữ số thập phân
gấp đôi 8 byte 2.3E-308 đến 1.7E + 308 15 chữ số thập phân
dài đôi 10 byte 3,4E-4932 đến 1,1E + 4932 19 chữ số thập phân

Tệp tiêu đề float.h xác định các macro cho phép bạn sử dụng các giá trị này và các chi tiết khác về biểu diễn nhị phân của số thực trong chương trình của bạn. Ví dụ sau sẽ in không gian lưu trữ được lấy bởi kiểu float và các giá trị phạm vi của nó:

#import <Foundation/Foundation.h>

int main() {
   NSLog(@"Storage size for float : %d \n", sizeof(float));
   return 0;
}

Khi bạn biên dịch và thực thi chương trình trên, nó tạo ra kết quả sau trên Linux:

2013-09-07 22:22:21.729 demo[3927] Storage size for float : 4

Loại trống

Kiểu void chỉ định rằng không có giá trị nào. Nó được sử dụng trong ba loại tình huống -

Sr.No. Các loại và Mô tả
1 Function returns as void

Có nhiều hàm khác nhau trong Objective-C không trả về giá trị hoặc bạn có thể nói chúng trả về giá trị vô hiệu. Một hàm không có giá trị trả về có kiểu trả về là void. Ví dụ,void exit (int status);

2 Function arguments as void

Có nhiều hàm khác nhau trong Objective-C không chấp nhận bất kỳ tham số nào. Một hàm không có tham số có thể chấp nhận là một khoảng trống. Ví dụ,int rand(void);

Bạn có thể chưa hiểu kiểu void tại thời điểm này, vì vậy hãy để chúng tôi tiếp tục và chúng tôi sẽ trình bày các khái niệm này trong các chương sắp tới.