Операнды для оператора sizeof

Опубликовано: 1 Января, 2022

Оператор sizeof используется для возврата размера своего операнда в байтах. Этот оператор всегда предшествует своему операнду. Операнд может быть типом данных или выражением. Давайте рассмотрим оба операнда на соответствующих примерах.

  1. имя-типа : имя-типа должно быть указано в круглых скобках.
    sizeof (type - name)

    Посмотрим на код:

    C

    #include <stdio.h>
    int main()
    {
    printf ( "%lu " , sizeof ( char ));
    printf ( "%lu " , sizeof ( int ));
    printf ( "%lu " , sizeof ( float ));
    printf ( "%lu" , sizeof ( double ));
    return 0;
    }

    C ++

    #include <iostream>
    using namespace std;
    int main()
    {
    cout << sizeof ( char )<< " " ;
    cout << sizeof ( int )<< " " ;
    cout << sizeof ( float )<< " " ;
    cout << sizeof ( double )<< " " ;
    return 0;
    }
    Выход:
    1
    4
    4
    8
    
  2. выражение : выражение может быть указано со скобками или без них.
    // First type
    sizeof expression
    // Second type
    sizeof (expression)

    Выражение используется только для получения типа операнда, но не для оценки. Например, код ниже печатает значение i как 5 и размер ia.

    C

    #include <stdio.h>
    int main()
    {
    int i = 5;
    int int_size = sizeof (i++);
    // Displaying the size of the operand
    printf ( " size of i = %d" , int_size);
    // Displaying the value of the operand
    printf ( " Value of i = %d" , i);
    getchar ();
    return 0;
    }

    C ++

    #include <iostream>
    using namespace std;
    int main()
    {
    int i = 5;
    int int_size = sizeof (i++);
    // Displaying the size of the operand
    cout << " size of i = " << int_size;
    // Displaying the value of the operand
    cout << " Value of i = " << i;
    return 0;
    }
    // This code is contributed by SHUBHAMSINGH10
    Выход:
    размер i = 4
     Значение i = 5
    

Использованная литература:
http://www.gnu.org/software/gnu-c-manual/gnu-c-manual.html#The-sizeof-Operator

Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .