请大家指正c语言编写的1D自由空间的FDTD程序:这个程序的编译连接都没有错误,但是一运行出现的就是乱码。但是我不知道问题出在哪里?请大家帮忙看看。
数组越界了,如果是一维的,相当于平面波,由于电磁场是交替的,所以说电磁场推进的时候,电场的推进就越界了
:23de遇到同样的问题了,
for(k=1;k<KE;k++)// 应该是: k = 0; k < KE; k++
{
ex[k]=0;
hy[k]=0;
printf("%d %5.2f %6.2f\n",k,ex[k],hy[k]);
}
for (k=1;k<=KE;k++)// 应该是: k = 0; k < KE; k++否则hy[k]越界
{
fprintf(fp," %6.2f /n",hy[k]);
}
注意C语言和Matlab语言的数组下标起点不一样
把最大边界-1就好了