Строковая переменная как байтовый массив

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Sun07
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 355
Зарегистрирован: 17.02.2006 (Пт) 21:27

Строковая переменная как байтовый массив

Сообщение Sun07 » 13.09.2006 (Ср) 18:46

Скажите, плиз, можно рассматривать строковую переменную фиксированной длины как байтовый массив? Я пробовал заносить в такую строку CHR(0) - длина по Len не менялась. Будут ли корректно выполняться операции сцепления строк, если такие строки содержат любые Ascii коды? Будет ли также такое работать для строк переменной длины? Например:

Dim s as string, s10 as string*10, s7 as string*7
s=s10 & s7

будет ли в результате len(s)=len(s10) + len(s7), где s10 и s7 содержат любые Ascii коды?

NashRus
Постоялец
Постоялец
 
Сообщения: 388
Зарегистрирован: 18.03.2006 (Сб) 1:16

Сообщение NashRus » 13.09.2006 (Ср) 19:00

ДА

Почему сам не проверишь ?

Sun07
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 355
Зарегистрирован: 17.02.2006 (Пт) 21:27

Сообщение Sun07 » 13.09.2006 (Ср) 19:25

Конечно, можно сделать строки со всеми Ascii в строке и проверить, но
я хочу знать мнение спецов, может есть такие моменты, о которых я не подразумеваю, может, например, комбинация двух Ascii нулей в строке будет означать её конец или ещё какие подводные камни найдутся...

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 13.09.2006 (Ср) 20:08

Про строки в VB6 есть моя статья на сайте.
Изображение

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 14.09.2006 (Чт) 7:18

Sun07 писал(а):Конечно, можно сделать строки со всеми Ascii в строке и проверить, но
я хочу знать мнение спецов, может есть такие моменты, о которых я не подразумеваю, может, например, комбинация двух Ascii нулей в строке будет означать её конец или ещё какие подводные камни найдутся...


Никаких проблем в VB со строками из-за наличия в них каких-либо специфических символов, например нуль-терминаторов или двух нуль-терминаторов не возникнет. В чем ты вполне можешь убедиться совершенно самостоятельно путем создания таких строк.
Весь мир матрица, а мы в нем потоки байтов!

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 14.09.2006 (Чт) 8:16

Кстати, можно и так:

Код: Выделить всё
Dim m() As Byte, s As String

s= 'Тест'
m=s
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 14.09.2006 (Чт) 10:00

Andrey Fedorov, оно конечно можно, но к чему это здесь? :?:
Весь мир матрица, а мы в нем потоки байтов!


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 131

    TopList