Форум программистов, компьютерный форум CyberForum.ru

символьный тип данных - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 32, средняя оценка - 4.75
Shark***
0 / 0 / 0
Регистрация: 18.11.2011
Сообщений: 13
23.11.2011, 10:26     символьный тип данных #1
Как инициализировать переменную символьного(char) типа словом(например "привет")???
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
thick_int
Заблокирован
23.11.2011, 10:49     символьный тип данных #2
Никак.
Но можно инициализировать переменную типа char* так, чтобы она указывала на Ваш строковый литерал "привет", например так:
C++
1
char* stroka("Привет");
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
23.11.2011, 11:34     символьный тип данных #3
thick_int, все можно
C++
1
2
3
char s[10];
char *str="Привет";
strcpy (s,"Привет");
thick_int
Заблокирован
23.11.2011, 11:46     символьный тип данных #4
Цитата Сообщение от go Посмотреть сообщение
все можно
Ну, во первых, там же вопрос относился к ИНИЦИАЛИЗАЦИИ, а не к присваиванию да еще по типу "правой рукой почешиите левое ухо".
Сыроежка
Заблокирован
23.11.2011, 14:51     символьный тип данных #5
Цитата Сообщение от Shark*** Посмотреть сообщение
Как инициализировать переменную символьного(char) типа словом(например "привет")???
Это невозможно сделать, так как переменная типа char занимает один байт, а слово "привет" - имеет тип символьного массива. Нельзя присваивать массив скалярному объекту типа char . Можно лишь присвоить значение какого-нибудь одного элемента этого массива.

Например, если вы хотите из слова "привет" объекту типа char присвоить третью букву "и", то вы можете написать

C++
1
char c = "привет"[2];
Но у вас есть возможность объявить символьный массив, который будет содержать слово "привет".

Например,

char s[] = "привет";

Здесь s - это симвоьный массив размером 7 байтов, содержащий слово "привет" и завершаюзий нулевой символ '\0'.
mc.Duck
Заблокирован
23.11.2011, 15:07     символьный тип данных #6
Shark***, или так:
C++
1
2
3
...
char str[] = "Привет!";
...
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
23.11.2011, 21:02     символьный тип данных #7
Сыроежка, можно объявить указатель, и присвоить ему адрес первого байта строки литера!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.11.2011, 21:17     символьный тип данных
Еще ссылки по теме:

C++ Как использовать символьный тип данных с типом int?
C++ Символьный тип данных
C++ Символьный тип данных и русские символы

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Сыроежка
Заблокирован
23.11.2011, 21:17     символьный тип данных #8
Цитата Сообщение от go Посмотреть сообщение
Сыроежка, можно объявить указатель, и присвоить ему адрес первого байта строки литера!
Вы меня учить собрались?! Я привел пример, когда можно изменять массив и присваивать его элементам новые значения. Так как исходный вопрос был не про указатели, а именно про фундаментальный тип данных char, которому присваивается значение.
Yandex
Объявления
23.11.2011, 21:17     символьный тип данных
Ответ Создать тему
Опции темы

Текущее время: 14:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru