Proqramlaşdırma kontekstində Nil və Null arasındakı fərq nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Proqramlaşdırma kontekstində, xüsusən iOS və Objective-C-də, Nil və Null müxtəlif mənalara malikdir:
-
Nil: Objective-C obyektləri üçün sıfır (null pointer) olan göstəricidir. Obyektin mövcud olmadığını göstərmək üçün istifadə olunur (məsələn,
NSObject *obj = Nil;). -
NULL: C strukturları və ya primitiv tiplər üçün sıfır göstəricisini ifadə edən makrodur (məsələn,
int *ptr = NULL;). -
NSNull: Foundation-da xüsusi obyekt olub, kolleksiyalarda null dəyərini ifadə etmək üçün istifadə olunur (məsələn,
NSArrayvə yaNSDictionarydaxilində), çünki onlarnil-i qəbul edə bilməz.
Nümunə:
NSObject *obj = Nil; // obyekt yoxdur
int *ptr = NULL; // ünvan yoxdur
NSArray *array = @[[NSNull null]]; // massiv daxilində null-ı ifadə edən obyekt
Beləliklə, Nil Objective-C obyektləri üçün sıfır göstəricidir, NULL isə adi göstəricilər üçün, NSNull isə kolleksiyalarda null-ı ifadə edən obyekt üçün istifadə olunur.