iOS 101Başlangıç seviyesi derslerde iOS uygulama geliştirme ortamını detaylı olarak inceliyoruz.

Tüm Eğitimleri Aldın mı? Kendini sınamanın tam zamanı

Haydi Sınava Gir

sizeof Operatörü ve Bir Örnek Program

Kategori : Mobil | Lisans : Creative Commons (by-nc-sa) | En son 11.05.2016 tarihinde güncellendi
Eğitmen : Geleceği Yazanlar Ekibi
Etiketler : obj-c operatörler obj-c sizeof

 

 

Operatör

Sembolü

Kullanılışı

İşlem Sonucu

Sizeof

Sizeof

Sizeof(a) veya sizeof b

a data tipinin byte türünden boyutunu veya b ifadesinin byte türünden boyutunu hesaplar.

 

Sizeof operatörü, bir veri tipi ya da bir ifadeyi argüman alarak bunun byte türünden uzunluğunu hesaplar. Argüman eğer bir ifadeyse, Sizeof operatörü bu ifade hangi türde sonuçlanacaksa bu türün uzunluğunu verir. Aşağıdaki örnek program bize bu konuda bir fikir verecektir.

 

Sizeof Fonksiyonu ile Çeşitli Tip ve İfadelerin Uzunluklarını Bulmak: Örnek Program

 

#import <Foundation/Foundation.h>
#include <math.h>

int main(int argc, char* argv[])
{
    NSLog(@"\nchar turunun uzunlugu =%ld\n", sizeof(char));
    NSLog(@"\nfloat turunun uzunlugu= %ld\n", sizeof(int));
    NSLog(@"\nshort turunun uzunlugu =%ld\n", sizeof(float));
    NSLog(@"\ndouble turunun uzunlugu =%ld\n", sizeof(double));
    NSLog(@"\nlong double turunun uzunlugu= %ld\n", sizeof(long double));
    NSLog(@"\nint turu gosterge uzunlugu =%ld\n", sizeof(int *));
    NSLog(@"\n5+3.0/2 ifadesinin sonucunun uzunlugu= %ld\n", sizeof(5+3.0/2));
    NSLog(@"\n'2'+5 ifadesinin sonucunun uzunlugu =%ld\n", sizeof ('2' + 5));
    return 0;
}

 

 

PROGRAMIN ÇIKTISI:

 

char turunun uzunlugu =1
float turunun uzunlugu= 4
short turunun uzunlugu =4
double turunun uzunlugu =8
long double turunun uzunlugu= 16
int turu gosterge uzunlugu =8
5+3.0/2 ifadesinin sonucunun uzunlugu= 8 // Burada bu işlemin Sizeof fonkisyonu tarafından kaç byte yer kapladığı yazılmıştır.
'2'+5 ifadesinin sonucunun uzunlugu =4     //Burada bir char ile sayının toplamının kaç byte yer kapladığı yazılmış

 

 

Sizeof  ifadesinde argüman bir ifade ise parantez zorunlu değildir.