gcc を使っていてinitilizer element is not constantというエラーが出ました。
c言語
1#include <stdlib.h> 2#include <stdio.h> 3#include <math.h> 4#include <string.h> 5 6#define pi 3.141592653589793 7#define c 2.998e8 8#define e0 8.854e-12 9#define u0 1.256637061e-6 10#define media 10 11 12#define dx 0.02 13#define dy 0.02 14#define dz 0.02 15 16#define nx 60 17#define ny 60 18#define nz 60 19 20#define nt 400 21 22#define frequency 200.0e6 23 24#define permittivity_0 8.854e-12 25#define permittivity_1 1.239e-10 26#define permittivity_2 7.083e-11 27#define permittivity_3 3.0e-11 28 29#define permeability_0 1.256637061e-6 30#define permeability_1 1.256637061e-6 31#define permeability_2 1.256637061e-6 32#define permeability_3 1.256637061e-6 33 34#define conductivity_0 0.01 35#define conductivity_1 10.0 36#define conductivity_2 0.01 37#define conductivity_3 0.1 38 39 40 41 42 43double dxt=c/dx; 44double dyt=c/dy; 45double dzt=c/dz; 46 47double dt=1.0/sqrt(dxt*dxt+dyt*dyt+dzt*dzt); 48double rh1=dt/u0; 49double rh2=dt/e0; 50 51double vvx=c*dt-dx; 52double wwx=c*dt+dx; 53double ux1=vvx/wwx; 54double ux2=2.*dx/wwx; 55double ux3=dx*c*c*dt*dt/2./dy/dy/wwx; 56double ux4=dx*c*c*dt*dt/2./dz/dz/wwx; 57 58double vvy=c*dt-dy; 59double wwy=c*dt+dy; 60double uy1=vvy/wwy; 61double uy2=2.*dy/wwy; 62double uy3=dy*c*c*dt*dt/2./dz/dz/wwy; 63double uy4=dy*c*c*dt*dt/2./dx/dx/wwy; 64 65double vvz=c*dt-dz; 66double wwz=c*dt+dz; 67double uz1=vvz/wwz; 68double uz2=2.*dz/wwz; 69double uz3=dz*c*c*dt*dt/2./dx/dx/wwz; 70double uz4=dz*c*c*dt*dt/2./dy/dy/wwz; 71 72 73double exi[nx][ny][nz]; 74double eyi[nx][ny][nz]; 75double ezi[nx][ny][nz]; 76 77double hxi[nx][ny][nz]; 78double hyi[nx][ny][nz]; 79double hzi[nx][ny][nz]; 80 81double exy1[nx][ny][nz]; 82double exz1[nx][ny][nz]; 83double eyx1[nx][ny][nz]; 84double eyz1[nx][ny][nz]; 85double ezy1[nx][ny][nz]; 86double ezx1[nx][ny][nz]; 87 88double exy2[nx][ny][nz]; 89double exz2[nx][ny][nz]; 90double eyx2[nx][ny][nz]; 91double eyz2[nx][ny][nz]; 92double ezy2[nx][ny][nz]; 93double ezx2[nx][ny][nz]; 94 95double cex_0,cey_0,cez_0,chx_0,chy_0,chz_0; 96double cexly_0,cezly_0,cezlx_0,ceylx_0,ceylz_0,cexlz_0; 97double chxly_0,chxlz_0,chylz_0,chylx_0,chzlx_0,chzly_0; 98double cex[media],cey[media],cez[media]; 99double ceylz[media],chylz[media],cexlz[media],chxlz[media]; 100double cexly[media],cezly[media],cezlx[media],ceylx[media]; 101double chxly[media],chzly[media],chzlx[media],chylx[media]; 102 103double permittivity[media]; 104double permeability[media]; 105double conductivity[media]; 106 107int idex[nx][ny][nz],idey[nx][ny][nz],idez[nx][ny][nz]; 108int idhx[nx][ny][nz],idhy[nx][ny][nz],idhz[nx][ny][nz]; 109 110void input(); 111void modeling(); 112void shoki(int n); 113void ecur_source(double time,int i_position,int j_position,int k_position); 114void electric_field(); 115void magnetic_field(); 116void output_conter(FILE *fp); 117void mur_1st(); 118 119int main() 120{ 121 122コード
これの47~70行にかけてずらっとinitializer element is not constant
で出ています。clangというコンパイラなら出ないと検索してわかったので試してみましたが、
C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h:10:10
: fatal error:
'vcruntime.h' file not found
#include <vcruntime.h>
1 error generated.
というエラーが出ます。できればgcc のコンパイラを使って解決したいですがどうすればいいですか?

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/09/07 07:01