Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 21.03.2016
Сообщений: 8
1

Странное поведение при работе со строками: почему программа выводит 8, если в input "МАКС"?

21.08.2016, 22:43. Просмотров 409. Ответов 3
Метки нет (Все метки)

Почему программа выводит 8, если в input: "МАКС"?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <string>
#include <string.h>
using namespace std;
 
int main(int argc, char* argv[])
{
   setlocale(LC_CTYPE, "rus");
   char s[202];
   cin>>s;
   cout<<strlen(s);
    
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.08.2016, 22:43
Ответы с готовыми решениями:

Странное поведение input type="number"
Здравствуйте! У меня есть форма &lt;form class=&quot;currensy_form&quot; method=&quot;post&quot;&gt; &lt;label&gt;Текущий курс...

Операции со строками.Заменить в строке букву "а" на "с", если она стоит на чётном месте,и на "у" если на нечётном
Дана строка.Заменить в строке букву &quot;а&quot; на &quot;с&quot;, если она стоит на чётном месте,и на &quot;у&quot; если на...

Программа выводит исключение "компилятор не доступен". Если в строке jc = new File("/bin/javac.exe");
Начал изучать java и возникла проблема. Программа выводит исключение &quot;компилятор не доступен&quot;. Если...

Странное поведение команды ECHO при использовании ">nul"
Ребят, всем здрасьте. Написан крайне бесполезный батник: @echo off :sizif_start cls echo...

3
:)
Эксперт С++
4763 / 3257 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
21.08.2016, 22:48 2
Потому что русские буквы в данном случае кодируются парой char'ов.
0
0 / 0 / 0
Регистрация: 21.03.2016
Сообщений: 8
21.08.2016, 23:22  [ТС] 3
Как правильно написать код?
0
6 / 6 / 7
Регистрация: 07.08.2016
Сообщений: 44
21.08.2016, 23:35 4
Максим3456, попробуй написать так
C++
1
2
3
4
5
6
7
#include <Windows.h>   //это нужно прописать
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    //твой код......
}
Добавлено через 1 минуту
Работает нормально, если изменить шрифт консоли на Lucida Console (ПКМ на рамке консоли -> свойства -> шрифты)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.08.2016, 23:35

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Напишите программу, которая выводит "YES", если все числа в последовательности одинаковые, и "NO" если это не так
На вход в первой строке подаётся натуральное число N (не более 10000). Далее, во второй строке...

Почему выводит ошибку, если "стираю" строку
Не знаю какое название теме дать... В общем: есть статическое поле класса, мне нужно его...

Программа считывает файл ".txt" и выводит сколько "слов" в нем дано ("слова" разделены пробелом)
Прошу помощи с кодом. Если честно немного не понимаю что пошло не так. #include &lt;iostream&gt;...

почему программа выводит русские символы до первой встречающейся "а"
#include &lt;iostream&gt; #include &lt;vector&gt; #include &lt;string&gt; #include &lt;algorithm&gt; using...

Почему программа выводит "$" вместо пробела?
Нужно чтобы программа вставляла в текст пробелы. но вместо них она у меня вставляет $. пробовал и...

Как сделать: если во всех ячейках диапазона знач.="выполнено", то в данной ячейке тоже "выполнено" иначе "в работе"
Прилагаю файл. В ячейке G17 формула, в которой надо упростить условие: Если в диапазоне ячеек...


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

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

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