![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как преобразовать String в PAnsiChar? [D7, WinXP]
rolex © (2005-01-30 12:33:00)Компилятор ругается "Incompatible types: 'Strings' and 'PAnsiChar'".
Кусок кода вот:Application.MessageBox('С объекта "' +(CheckListBox1.Items[i2])+'" автоматически
Как преобразовать CheckListBox1.Items[i2] в AnsiChar?
rolex (2005-01-30 18:39:00) [1]
> JaDS © (30.01.05 16:13) [11]
> 2rolex:
> тогда уж лучше так Application.MessageBox(PChar('С объекта
> "'+(CheckListBox1.Items[i2])+'" автоматически
А я так и сделал. (Я не любитель ненужного кода. Люблю чтобы мои исходники были максимально упрощены, и понятны.)
JaDS (2005-01-30 16:13:00) [2]2rolex:
тогда уж лучше такApplication.MessageBox(PChar('С объекта "'+(CheckListBox1.Items[i2])+'" автоматически
Ihor Osov'yak (2005-01-30 15:35:00) [3]2 ShimON
Делфи - он выдумщик такой при работе со строками.
Помогает просмотр кода по Ctrl_Alt_C после срабатывания брекпоинта на строчке исходного текста, где производится операция со строками.
На некоторой стадии изучения матчасти очень помогает (вышеупомянутый просмотр) в понимании механизмов работы со строками.
rolex (2005-01-30 15:24:00) [4]Всем сапиб! Воспользовался этим:
S := '';
P := PChar(S);
Помогло!
ShimON (2005-01-30 13:37:00) [5]Прогнал, посмотрел - похоже ты прав...
Anatoly Podgoretsky (2005-01-30 13:33:00) [6]И не уходи от вопроса [3], что ты сделал что бы проверить саое утвержение - просмотрел исходный код, сделал трассировку примера, прогнал пример и сравнил значение P?
Anatoly Podgoretsky (2005-01-30 13:31:00) [7]А тос что это не String, а ShortString, мы говорили про String
ShimON (2005-01-30 13:24:00) [8]Ошибся
В варе, конечно Path: PChar;
ShimON (2005-01-30 13:22:00) [9]как тогда объяснишь это..
type
PRegMusicInfo = ^RegMusicInfo;
RegMusicInfo = packed Record
Name : ShortString;
Adress : TAdress;
Path : ShortString;
end;
procedure lala;
var
Music: PRegMusicInfo;
begin
Path:= PChar(Music^.Path);
end;
Ошибка вылезает: Invalid Typecast
Anatoly Podgoretsky (2005-01-30 13:15:00) [10]ShimON © (30.01.05 13:11) [2]
Заблуждаешься, именно функция, можешь или протрассировать или проверить следующим образом
S := '';
P := PChar(S);
ShimON (2005-01-30 13:11:00) [11]Функция??? :) На мой взгляд - это явное приведение типов.... Или я ошибаюсь??
Anatoly Podgoretsky (2005-01-30 12:34:00) [12]Функция PChar