Tôi đang cố gắng để khởi tạo mảng công đoàn sau tại tuyên bố:khởi tạo một mảng công đoàn tại khai
typedef union { __m128d m; float f[4]; } mat;
mat m[2] = { {{30467.14153,5910.1427,15846.23837,7271.22705},
{30467.14153,5910.1427,15846.23837,7271.22705}}};
Nhưng I'getting các lỗi sau:
matrix.c: In function ‘main’:
matrix.c:21: error: incompatible types in initialization
matrix.c:21: warning: excess elements in union initializer
matrix.c:21: warning: (near initialization for ‘m[0]’)
matrix.c:21: warning: excess elements in union initializer
matrix.c:21: warning: (near initialization for ‘m[0]’)
matrix.c:21: warning: excess elements in union initializer
matrix.c:21: warning: (near initialization for ‘m[0]’)
matrix.c:21: error: incompatible types in initialization
matrix.c:21: warning: excess elements in union initializer
matrix.c:21: warning: (near initialization for ‘m[1]’)
matrix.c:21: warning: excess elements in union initializer
matrix.c:21: warning: (near initialization for ‘m[1]’)
matrix.c:21: warning: excess elements in union initializer
matrix.c:21: warning: (near initialization for ‘m[1]’)
Có cần phải có một tập hợp các dấu ngoặc ôm xung quanh toàn bộ biểu thức '.f = {...}'. – cdhowie
@cdhowie Cảm ơn, lỗi đánh máy. Đã sửa. – unwind
Giải pháp làm sạch đã chuyển tờ khai nổi đến vị trí đầu tiên. Điều này làm cho việc sử dụng không cần thiết ".f" và nó biên dịch mà không có lỗi. Cảm ơn. – albertgumi