Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> С++ '\0' в C# ? как будет выглядеть перевод такой конст? 
:(
    Опции темы
sashara
Дата 29.12.2008, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 26.12.2008

Репутация: нет
Всего: нет



На С++ имеется такая конструкция:

Код

#define INVALID    '\0'


Как она будет выглядеть на С# ?

У меня есть предположение, но я сомневаюсь:

Код

const string INVALID = "\r\n";


Это сообщение отредактировал(а) sashara - 29.12.2008, 10:27
PM MAIL   Вверх
Partizan
Дата 29.12.2008, 10:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 8
Всего: 67



sashara, а с какого перепугу '\0' в C# стало '\r\n'???

придётся просто код переписать наверное...в C# строки несколько другие, нежели в С++...


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
sashara
Дата 29.12.2008, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 26.12.2008

Репутация: нет
Всего: нет



Цитата(Partizan @ 29.12.2008,  10:46)
sashara, а с какого перепугу '\0' в C# стало '\r\n'???

Ну так я и спрашиваю, как это перевести. Это же только мое предположение.

помог бы лучше smile 
PM MAIL   Вверх
Freak_FB
Дата 29.12.2008, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ктулхувед
**


Профиль
Группа: Участник
Сообщений: 296
Регистрация: 13.10.2006

Репутация: нет
Всего: 4



Есть мнение - нужно хотя-бы чуть-чуть знать основы шарпа, чтобы не писать такие вопросы.

sashara, я бы, прежде всего, посмотрел, в каком контексте используется это макроопределение. Скорее всего будет несколько изменена часть программной логики, поскольку, как было сказано, работа со строками в шарпе отличается от этой самой работы в Си.

Может код покажешь?


--------------------
user posted image
user posted image
Тонет Ктулху, все медведы горят в огне.
Я Креведко, очень страшно сегодня мне.

PM MAIL ICQ Skype GTalk Jabber   Вверх
sashara
Дата 29.12.2008, 11:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 26.12.2008

Репутация: нет
Всего: нет



Используется в контексте возвращаемого значения, то есть в случае ошибки С++ функция возвращает '\0'
PM MAIL   Вверх
Partizan
Дата 29.12.2008, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 8
Всего: 67



sashara, ну значит в C# возвращайте string.Empty


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
sashara
Дата 29.12.2008, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 26.12.2008

Репутация: нет
Всего: нет



^^

Это не С# возвращает, а С++ функция smile
PM MAIL   Вверх
Partizan
Дата 29.12.2008, 13:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 8
Всего: 67



sashara,    

ааа...понял

Код

const char INVALID = '\0';


Цитата

 C# defines the following character escape sequences:

    * \' - single quote, needed for character literals
    * \" - double quote, needed for string literals
    * \\ - backslash
    * \0 - Unicode character 0
    * \a - Alert (character 7)
    * \b - Backspace (character 8)
    * \f - Form feed (character 12)
    * \n - New line (character 10)
    * \r - Carriage return (character 13)
    * \t - Horizontal tab (character 9)
    * \v - Vertical quote (character 11)
    * \uxxxx - Unicode escape sequence for character with hex value xxxx
    * \xn[n][n][n] - Unicode escape sequence for character with hex value nnnn (variable length version of \uxxxx)
    * \Uxxxxxxxx - Unicode escape sequence for character with hex value xxxxxxxx (for generating surrogates)




--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
jonie
Дата 31.12.2008, 09:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 6
Всего: 118



Код

byte i = 0;
 будет... 
вопрос в другом, как "другие возраты функции будут представлены в c#"...

если прототип такой:
Код

char somestub();

тогда понятно что byte.

если такой:
Код

TCHAR somerstub();
и скомпилировано в режиме unicode на VC++ (с UCS2 кодировкой короче), тогда там ошибка написана, если только не используют примерно так: TEXT(INVALID). в этом случае ловить в c# надо char...




--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1033 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.