Форум: "Сети";
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];
ВнизПонял что совсем ничего непонял...... Найти похожие ветки
← →
4ainick (2001-12-18 10:07) [0]Здраствуйте!...
возник у меня вопрос..... ...(точнее их оказалась куча).
//( находится в разделе Net )
procedure TForm1.ServerSocket1ClientRead(Sender: TObject; Socket: TCustomWinSocket);
var
buffer: Pointer;
bufflen: integer;
Somevariable: pchar;
begin
bufflen := Socket.ReceiveLength;
socket.ReceiveBuf(buffer,bufflen);
somevariable:=pchar(@buffer);
end;
решением на него оказалось
var
buffer:string;
...
SetLength(buffer, socket.ReceiveBuf(Pointer(nil)^, -1));
SetLength(buffer, socket.ReceiveBuf(Pointer(buffer)^, bufflength));
== взято из source Vcl
но понять охота что значит Pointer(nil)^ - адрес указывающий на nil (никуда?) или адрес nil? или что -то ещё,
string - указатель на первый байт строки или как?
array of char - указатель на указатель первого элемента или нет?
а что если в параметрах функции написано "var Buf" - это указатель (тогда почему не поинтер) или просто именованная область памяти (читай переменная)?
Pointer^ - содержимое памяти на которую указывает pointer?
Addr() - возвращает указатель на область памяти где хранится значение переменной?
вообщем я уже совсем запутался... если, и где я неправ.
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.005 c