Что нового

Ошибка при создании масива

Dima1337

Осваивающий
Сообщения
186
Репутация
24
Доброго времени суток.
Сижу уже около 3х часов и не могу понять, что я делаю не так?
Код:
$hFile = FileOpen(@ScriptDir & '\money.au3', 0)

Global $a = 0, $sLine[$a]

Do
	$a += 1
	Global $sLine[$a]
	;
	$sLine[$a] = FileReadLine($hFile,$a)
Until @error = -1

FileClose($hFile)
 
Автор
Dima1337

Dima1337

Осваивающий
Сообщения
186
Репутация
24
На 4ый час до меня дошло... Вот как обычно, создашь тему на форуме и через 10-20 минут доходит самостоятельно :D
Код:
$hFile = FileOpen(@ScriptDir & '\money.au3', 0)

Global $a = 0, $sLine[99]

Do
    $a += 1
    ;
    $sLine[$a] = FileReadLine($hFile,$a)
Until @error = -1

FileClose($hFile)
 

Tempo

AutoIT Гуру
Сообщения
616
Репутация
205
Dima1337 сказал(а):
Сижу уже около 3х часов и не могу понять, что я делаю не так?

Нумерация ячеек массива начинается с 0 и заново объявленный массив не будет содержать предыдущих значений нужно использовать ReDim, но я бы не рекомендовал пользоваться таким способом чтения файла в массив строк для этих целей есть
Код:
StringSplit()
FileReadToArray()
_FileReadToArray()


Но вот тут под спойлером рабочая версия вашего скрипта

Код:
#include <Array.au3>

$hFile = FileOpen(@ScriptFullPath, 0)

Global $i = 0, $aLines[$i]

Do
    $i += 1
    ReDim $aLines[$i]
    ;
    $aLines[$i - 1] = FileReadLine($hFile, $i)
Until @error = -1

_ArrayDisplay($aLines)
FileClose($hFile)


Добавлено:
Сообщение автоматически объединено:

Dima1337 сказал(а):
На 4ый час до меня дошло... Вот как обычно, создашь тему на форуме и через 10-20 минут доходит самостоятельно :D

Вы просто объявили массив с определенным количеством ячеек наперед поэтому при обращении к 1 ячейке скрипт не вылетел но у вас 0 ячейка пустая
 
Верх