Вниз
Скачать: CL | DM;

Подскажите в чем я неправ   Найти похожие ветки 

 
_saha_   (2002-12-02 13:48) [0]

Привет всем!
Суть проблемы такова:
открываю, допустим, консоль с помощью createfile,
все ок, потом
var p:^string;
New(p);
p^:="1";
p^:=p^+"234";
i:=0;
writefile(f,p^,4,i,nil)
Dispose(p);
По моим понятиям на экране должно вывестись 1234, но выводиться какая-то лажа.
Так в чем я неправ?


 
Reindeer Moss Eater   (2002-12-02 13:53) [1]

В интересном подходе к работе с динамическими строками


 
MBo ©   (2002-12-02 13:55) [2]

у тебя проблемы с пониманием строковых и указательных типов.
var s:string;

writefile(f,@s[1],4,i,nil)




 
_saha_   (2002-12-02 15:53) [3]

Так было в оригинале (взято на этом же сайте):
function Send(var Buf; size: word): integer;
var p: pointer; i: integer;
begin
(сюда добавил)
p := @Buf;
result := 0;
while size > 0 do begin
if not WriteFile(f, p^, 1, i, nil) then exit;
inc(result, i); inc(integer(p)); dec(size);
Application.ProcessMessages;
end;
end;
Я добавил
var buf:string
buf:="1234"


 
MBo ©   (2002-12-02 16:10) [4]

Пардон, у меня синтаксическая ошибка. Надо так:
writefile(f,s[1],4,i,nil);



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
14-36415
AL2002
2002-11-22 16:00
2002.12.12
MySQL


14-36346
WD
2002-11-20 16:53
2002.12.12
Где можно найти программу с базой


1-36200
don_dampster
2002-12-04 11:42
2002.12.12
Как получить путь к моему приложению?


4-36475
40шт
2002-10-30 18:13
2002.12.12
Как обнаружить пути открытых окон?


14-36331
F1
2002-11-20 16:16
2002.12.12
Ну очень сложный вопрос!!!




   Наверх