![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
String to array of char [D6, Win2k]
cher_gvf © (2002-12-03 10:20:00)как преобразовать строку заданной длины в массив символов такого размера?
Юрий Федоров (2002-12-03 12:30:00) [1]Не знаю, как у вас, а у меня strpcopy принимает массив Char"ов в качестве PChar совершенно нормально
Андрей Сенченко (2002-12-03 11:59:00) [2]cher_gvf © (03.12.02 11:52
Безусловно это существенная разница. И не только для Дельфи.
Тебе же объяснили уже :
1. Строка (string) УЖЕ является МАССИВОМ сиволов
2. Доступ к каждому символу осуществляется также как в массиве
( то есть S[i] )
Преобразование String в PChar - P := pchar(s)
P.S. ... купи чтоли книжку
cher_gvf (2002-12-03 11:52:00) [3]В качестве первого параметра strpcopy требует PChar а не array of char.По-видимому,для Дельфи это существенная разница.Поэтому вариант MBo у меня не проходит.
Skier (2002-12-03 11:35:00) [4]>cher_gvf
const
AStr = "Hello, world !";
var
c : array[1..Length(AStr)] of char;
begin
Move(AStr[1], c, Length(AStr));
end;
KoluChi (2002-12-03 11:34:00) [5]Да, забыл, мне тоже не ясно зачем если есть String получать массив символов?
KoluChi (2002-12-03 11:33:00) [6]Вариант MBo рабочий, там только несоответствие длины строки и размерности массива. Увеличь размерность массива.
cher_gvf (2002-12-03 11:27:00) [7]В первом случае Дельфи ругается на совместимость типов(вы пробовали вообще сами такой вариант?).А второй дык ваще как бы не по теме (где тут массив символов?)
FreeLancer (2002-12-03 10:40:00) [8]
> а вообще-то строка и так является массивом символов
Вот именно:
var my_str: string;
my_char: string;
...
my_str := "Произвольная строка";
my_char := my_str[2];
{my_char - р}
MBo (2002-12-03 10:29:00) [9]а вообще-то строка и так является массивом символов
MBo (2002-12-03 10:23:00) [10]для какой цели?
Один из вариантов
var s:string;
c:array[0..9] of char;
begin
s:="qqwweerrtt";
strpcopy(c,s);