Я использую awk для обработки почасовых данных о погоде, сохраняя 10 массивов с 8784 элементами данных. Если массив неполный, т.е. останавливается на 8250 и т.д., то после команды "КОНЕЦ" я заполняю оставшиеся элементы массива последним доступным для массива значением. Однако, когда я затем распечатываю полные массивы, вместо этого я получаю 0 для заполненных значений. Чем это вызвано?? Есть ли у awk ограничение на размер массива, которое мешает ему заполнять массивы? Ниже приведен фрагмент программы awk. В двух операторах печати в первый раз элементы массива заполнены, но во второй раз они пусты.
Любая помощь приветствуется, потому что эта проблема задерживает мою работу.
Джо Хуанг
END{
if (lastpresstime < tothrs)
{
diffhr = tothrs - lastpresstime
for (i=lastpresstime+1;i<=tothrs+1;i++)
{
xpressinter[i]=diffhr
xpressrecords[i]=diffhr
xipress[i]=lastpress
xpressflag[i]="R"
printf("PRS xipress[%4d] =%6.1f\n",i,xipress[i]) > "ncdcfm3.prs"
printf(" xipress[%4d] =%6.1f%1s\n",i,xipress[i],xpressflag[i])
}
for (i=1;i<=tothrs+1;i++) printf("PRS xipress[%4d] =%6.1f\n",i,xipress[i])
}
~