Pull to refresh

Всем привет, это снова stalker320. Делаю что-то вроде анонса, я тут изучаю что появилось в C23 и думаю записать пару уроков с помощью него, так как пара новых функций выглядят теперь довольно интересными, к примеру, при объявлении перечисления теперь можно указать размер поля (: char). Вот он в исходном виде:

enum ColorChannel : char {RED, GREEN, BLUE, ALPHA};

Добавлены атрибуты:

#include <stdlib.h>

[[nodiscard]] char* makeCharArray(int length) {
  return reallocarray(NULL, length, sizeof(char));
}

int main(int argc, [[maybe_unused]] const char* argv[argc+1]) {
  makeCharArray(10); // warning: ignoring return value of 'makeCharArray'
  return 0;
}

И многое другое.

P. S. используемые мною программы:

GCC: 15.2.0
CMake: 4.2.1

P. P. S. Про отсутствующее при проверке:

В моём компиляторе, функция reallocarray по неизвестным мне причинам отсутствует.

Tags:
+1
Comments4

Articles