Форум: "KOL";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];
Вниз2Владимир Кладов: Не работает DecInt64() Найти похожие ветки
← →
Slay (2005-01-07 23:45) [0]При вызове DecInt64 выдает " инструкция по адресу ххххх обратилась к памяти по адресу ххххххх . Память не может быть writteln". И программа вылетает.
Вот пример процедуры:
procedure TForm1.Button1Click(Sender: PObj);
var
i:i64;
s:Cardinal;
begin
t := "test.txt";
i := Int2Int64(3673771);
LogFileOutput(t,"i="+int64_2str(i));
s := 3552000;
DecInt64(i,s); // <-Error
LogFileOutput(t,"i="+int64_2str(i));
end;
← →
thaddy (2005-01-08 12:05) [1]I64 and INT64 are different. I64 is a KOL implementation for compatibility with D3 and earlier. INT64 is a native Delphi type.
You should not mix the two! but always use INT64 if you have D4 or higher.
← →
Владимир Кладов (2005-01-08 13:18) [2]Смешивать запросто, я так и делаю иногда. Приведение к типу I64( i ) работает, где i:Int64. Внутри это тот же тип данных.
← →
Slay (2005-01-08 13:25) [3]thaddy большое спосибо ты мне очень помог.
У меня есть еще один вопрос. Как Int64 перевести в String?
Я сделал так int64_2str( i64(i) ) кажется работает.
Переделанный пример процедуры:
procedure TForm1.Button1Click(Sender: PObj);
var
i:int64;
s:Cardinal;
begin
t := "test.txt";
i := 3673771;
LogFileOutput(t,"i="+int64_2str(i64(i)));
s := 3552000;
Dec(i,s); // <-OK
LogFileOutput(t,"i="+int64_2str(i64(i)));
end;
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.013 c