5
이 코드는 구조체 배열 액세스에 대한 지식을 테스트하는 것입니다. 이 코드를 실행하면 많은 사람들이 param을 초기화하는 많은 에러를 발생시킵니다. 오류를 이해하고이 문제를 해결하는 데 도움을주십시오. 누군가가 이미 해결 한 코드를 재사용하려고했습니다. 구조체를 매개 변수로 채우는 것에 대한 제 질문입니다. Param_u param너무 많은 유니온 구조 배열을 초기화합니다
#include <iostream>
#include <stdio.h>
#include <string.h>
#define ARRAY_COUNT(arr) (sizeof (arr)/sizeof *(arr))
typedef union {
struct { // Function parameters
int *array;
size_t size;
};
struct { // Function return value
float mean;
int Median;
};
} Param_u;
int main() {
int array_1[] = {1, 2, 3, 4, 5};
int ret1, ret2;
// Fill the Struct with parameters
Param_u param = {
.array = array_1,
.size = ARRAY_COUNT(array_1),
};
return 0;
}
prog.cpp : prog.cpp : 28 : 5 : 오류 :
다음 진단 제공 'Param_u' } 너무 많은 초기화하는 단계; – TestEngineerclang++
clang도 오류가 발생합니다. 라이브 데모 [here] (http://rextester.com/PNAALV26498)를 참조하십시오. 사용중인 clang의 버전은 무엇입니까? – Destructor
표준 C++에는 지정된 초기화 프로그램이 없습니다 –