Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
GRUB_666
0 / 0 / 1
Регистрация: 22.04.2017
Сообщений: 80
1

Как записать в переменную char первый символ строки string

10.03.2018, 13:45. Просмотров 1808. Ответов 7
Метки нет (Все метки)

Подскажите пожалуйста, как я могу для переменной char получить первый символ какой либо строки ?

Пытаюсь делать так:

C++
1
letter = (char)Family[0]; // Ругается, говорит не существует функции для конвертации из string в char
Поискал в интернете, но ничего подходящего не нашел, прошу помощи здесь.

Заранее благодарен!
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.03.2018, 13:45
Ответы с готовыми решениями:

Как преобразовать первый символ строки в переменную char?
string str = "hello"; char ch; хочу чтобы в переменной "ch" лежал символ "h" Это в идеале,...

Как записать длину строки типа string в переменную
Собственно вопрос в заголовке. Спасибо заранее:) Через i=s.size() // где, s -> string, i -> int;...

Как преобразовать char* в string и вывести переменную string на экран?
for (int k = 0; k < 10; k++) { int x = (int)rand() / RAND_MAX + rand() % 6 + 2; ...

Как преобразовать переменную string в массив char[]?
Есть переменная string и массив char как записать переменную типа string в такой массив ? ...

Как передать символ в функцию (const char *string)
Мне нужно передать в функцию atof символы F, F, S, S, но когда я пытаюсь так сделать ошибка invalid...

7
Даценд
Модератор
Эксперт .NET
5298 / 4465 / 2869
Регистрация: 20.04.2015
Сообщений: 8,050
10.03.2018, 13:53 2
Цитата Сообщение от GRUB_666 Посмотреть сообщение
как я могу для переменной char получить первый символ какой либо строки ?
C++
1
2
string str = "Sadfgsadf";
char ch = str[0];
0
Lambont
92 / 91 / 61
Регистрация: 23.11.2013
Сообщений: 242
10.03.2018, 13:55 3
GRUB_666, очень странно, что не получается ваш пример... Вы точно уверены, что Family имеет тип string, а letter тип char?
0
GRUB_666
0 / 0 / 1
Регистрация: 22.04.2017
Сообщений: 80
10.03.2018, 14:03  [ТС] 4
Стоит отметить, что Family и letter - это указатели. Может в этом дело?
Хотя даже если скопировать ваши пример, выдает такую ошибку (Она у меня сейчас почти всегда):


Ошибка C3867 "std::basic_string<char,std::char_traits<char>,std::allocator<char>>::c_str": нестандартный синтаксис; используйте "&", чтобы создать указатель на член

Добавлено через 1 минуту
Вне описания класса, а в функции main() все отлично
0
Даценд
Модератор
Эксперт .NET
5298 / 4465 / 2869
Регистрация: 20.04.2015
Сообщений: 8,050
10.03.2018, 14:04 5
Цитата Сообщение от GRUB_666 Посмотреть сообщение
Может в этом дело?
Может стоит показать код?
0
Lambont
92 / 91 / 61
Регистрация: 23.11.2013
Сообщений: 242
10.03.2018, 14:12 6
Цитата Сообщение от GRUB_666
Ошибка C3867 "std::basic_string<char,std::char_traits<char>,std::allocator<char>>::c_str": нестандартный синтаксис; используйте "&", чтобы создать указатель на член
Так это ошибка ввобще никак не связана с проблемой из поста, вы где-то в коде скорей всего пытаетесь у строки вызвать метод c_str, не написав скобки.
Что-то типа Family.c_str, а надо Family.c_str().
0
nd2
3103 / 2597 / 1134
Регистрация: 29.01.2016
Сообщений: 8,690
10.03.2018, 14:28 7
Лучший ответ Сообщение было отмечено GRUB_666 как решение

Решение

Цитата Сообщение от GRUB_666 Посмотреть сообщение
Стоит отметить, что Family и letter - это указатели. Может в этом дело?
В этом:
C++
1
letter = (*Family)[0];
1
GRUB_666
0 / 0 / 1
Регистрация: 22.04.2017
Сообщений: 80
10.03.2018, 16:15  [ТС] 8
Все заработало ! Спасибо!
0
10.03.2018, 16:15
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.03.2018, 16:15

Ввести с клавиатуры символ (в переменную char) и определить, соответствует ли введенный символ 'Q' или 'q'
1)Ввести с клавиатуры символ (в переменную char) и определить, соответствует ли введенный символ...

Как объединить 2 char и записать в string
Как объединить 2 char и записать в string в файле находится строчка вида 012345 Все переменные...

Как записать шестнадцатеричное число в переменную типа string?
Есть ф-ция, которая переводит целочисленный переменные или просто цифры в шестнадцатеричный вид....


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.