Я пытаюсь выяснить, сколько моя структура потребует памяти. Рассмотрим следующий код.

   struct tNode{
       short data;
       tnode *left;
       tnode *right;
       tnode *student;    
 }

Поэтому я знаю, что data - это 2 байта, но как насчет *left, *right и *student, сколько памяти они будут потреблять и как его вычислить.

0
dark_3nergy 17 Мар 2019 в 16:24

1 ответ

Лучший ответ

Вы ищете оператор sizeof

Возвращает размер в байтах объектного представления типа

Пример использования:

#include <iostream>

class tnode;

struct tNode {
       short data;
       tnode *left;
       tnode *right;
       tnode *student;
};

int main()
{

  std::cout << sizeof(tNode) << std::endl;
  return 0;
}

Вывод на моей машине:

32
2
Ayxan Haqverdili 17 Мар 2019 в 13:29