C++ показать вторую букву из слова

277
18 апреля 2017, 09:55

Привет. Нужна помощь с выводом определенных букв из слова. Например есть char* moeslovo = "moeslovo";

как из moeslovo показать только определенную букву, например вторую, т.е. "o". Буду рад готовому примеру, заранее благодарю

Answer 1

Строка char* - не что иное, как массив символов. Массивы в C и C++ индексируются, начиная с нуля, так что то, что вы называете вторым символом, имеет индекс 1, а k-й символ в обыденном понимании - k-1-й, так что получить k-й символ можно как moeslovo[k-1].

Если же вопрос в "показать", то нужно использовать один из массы способов. Например,

putchar(moeslovo[k-1]);     // Работает и в C, и в C++
printf("%c",moeslovo[k-1]); // Работает и в C, и в C++
cout << moeslovo[k-1];      // Работает только в C++

В силу способов использования указателей можно обращаться к букве и как

cout << *(moeslovo+k-1);

или даже

cout << *(k-1+moeslovo);
cout << (k-1)[moeslovo];
Answer 2
char* moeslovo = "moeslovo";
std::cout << moeslovo[1] << std::endl;
std::cout << *(moeslovo+1) << std::endl;
READ ALSO
Visual C++ Куча была повреждена (параметры: 0x774BCDD8)

Visual C++ Куча была повреждена (параметры: 0x774BCDD8)

Здравствуйте! Пишу свой класс Array, который представляет из себя массивПри вызове метода append() программа выдаёт исключение

427
Не удается создать стек в теле класса

Не удается создать стек в теле класса

Хочу создать стек с элементами класса Disk в классе Pole, но получаю ошибку: синтаксическая ошибка: отсутствие ";" перед "<"

224
Сложение двух больших чисел

Сложение двух больших чисел

Большие числа реализую как массив unsigned __int64[8]Как реализовать операции сложения и умножения для таких чисел? Нашел пример алгоритма на сайте,...

269
Функция add - С++ [требует правки]

Функция add - С++ [требует правки]

Не могу ввести в файл ФИО и название товараПомогите найти ошибку

617