LINUX.ORG.RU

История изменений

Исправление SZT, (текущая версия) :

Потому что вместо решения проблемы ублюдочного синтаксиса описаний типов

Ну насчет описаний типов, typeof() из GCC это решает

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
  typeof(int [3]) a = {1,2,3};
  printf("%d %d %d\n", a[0], a[1], a[2]);
  return EXIT_SUCCESS;
}

и его предлагают в новый стандарт Си добавить: https://thephd.dev/_vendor/future_cxx/papers/C - typeof.html

А в крестах вот так можно:

#include <iostream>
#include <cstdlib>

int main()
{
  std::type_identity<int[3]>::type a = {1,2,3};
  std::cout << a[0] << " " << a[1] << " "<< a[2] << std::endl;
}

Исходная версия SZT, :

Потому что вместо решения проблемы ублюдочного синтаксиса описаний типов

Ну насчет описаний типов, typeof() из GCC это решает

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
  typeof(int [3]) a = {1,2,3};
  printf("%d %d %d\n", a[0], a[1], a[2]);
  return EXIT_SUCCESS;
}

и его предлагают в новый стандарт Си добавить: http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2724.htm

А в крестах вот так можно:

#include <iostream>
#include <cstdlib>

int main()
{
  std::type_identity<int[3]>::type a = {1,2,3};
  std::cout << a[0] << " " << a[1] << " "<< a[2] << std::endl;
}