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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Evgeny FeiM
0 / 0 / 0
Регистрация: 20.02.2014
Сообщений: 6
#1

Непонятные символы в консоли - C++

21.02.2014, 15:06. Просмотров 628. Ответов 6
Метки нет (Все метки)

Выводит непонятные символы (пики, стрелки), скрин снизу, посмотрите.
Вот сам код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream>
using namespace std;
 
int main()
{
    char text[80], resultMas[80];
    int i=0, resi=0, lenght=0, countWords=0, maxln, worldcount, b=0;
    
    cout<<"BBEDITb FPA3Y:"<<endl;
    cin.get(text,80);
    cin.ignore(100, '\n');
    
    while(text[i]!='\0') //длинна строки
    {
        i++;
        lenght++;
    }
    cout<<"Lenght: "<<lenght<<endl;
    maxln=lenght;
    for(i=maxln; i>=0; i--) //меняем последовательность слов задом наперед
    {
        if(text[i]==' ')
        {
        if(text[i+1]!=' ')
        {
            b=i;
            while(b<=maxln&&b+1!=' '&&b!='/0')
            {
                worldcount=b+1;
                resultMas[resi]=worldcount;
                cout<<resultMas[resi]<<" ";
                resi++;
                b++;
            } 
        }
        }
    }
}
Миниатюры
Непонятные символы в консоли  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DrOffset
6851 / 4062 / 927
Регистрация: 30.01.2014
Сообщений: 6,859
21.02.2014, 15:19     Непонятные символы в консоли #2
C++
1
while(b<=maxln&&b+1!=' '&&b!='/0')
Слэш в другую сторону
Надо '\0'.

Да и вообще с алгоритмом чего-то не то. Задача-то какая?
Почему индекс сравнивается с пробелом и нулем?
Evgeny FeiM
0 / 0 / 0
Регистрация: 20.02.2014
Сообщений: 6
21.02.2014, 18:46  [ТС]     Непонятные символы в консоли #3
DrOffset, спасибо, задачка в том что бы в строке переставить слова задом наперед (именно слова, не буквы). Я решил пойти методом пробелов, но за условием задачки пробелов может быть 2, 1 или даже несколько. Поэтому такие индексы.
DrOffset
6851 / 4062 / 927
Регистрация: 30.01.2014
Сообщений: 6,859
21.02.2014, 18:58     Непонятные символы в консоли #4
Цитата Сообщение от Evgeny FeiM Посмотреть сообщение
Поэтому такие индексы
Так может быть значение строки (символ по индексу) надо сравнивать, а не сам индекс?
Evgeny FeiM
0 / 0 / 0
Регистрация: 20.02.2014
Сообщений: 6
21.02.2014, 19:07  [ТС]     Непонятные символы в консоли #5
Ноу, значение строки по этому индексу это буква. Короче, вот как работает мой алгоритм: Обрабатывается строка от конца. Если находит пробел, считываются последующие буквы после пробела и записываются в новую строку, после бежим дальше по строке от места последнего пробела. Алгоритм такой, что не будет выводить первое слово первой строки, перед ним попросту нету пробела. Но если так, то почему не выводит прога предыдущие слова?
В примере строка: feim gonna hate
Должно вывести: hate gonna, а оно вообще никак не выводит...
DrOffset
6851 / 4062 / 927
Регистрация: 30.01.2014
Сообщений: 6,859
21.02.2014, 19:20     Непонятные символы в консоли #6
Цитата Сообщение от Evgeny FeiM Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
b=i;
while(b<=maxln&&b+1!=' '&&b!='\0')
{
    worldcount=b+1;
    resultMas[resi]=worldcount;
    cout<<resultMas[resi]<<" ";
    resi++;
    b++;
}
Похоже намеками не получается.
Вот смотри: у тебя i - это индекс в строке. Тип int, b - тоже тип int.
А потом ты перед циклом while присваиваешь индекс переменной b.
А потом в цикле b проверяешь на неравенство пробелу и нулю. Но b - это же индекс i! Все еще не видишь ничего странного?
Как может быть индекс равен или не равен пробелу?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.02.2014, 19:24     Непонятные символы в консоли
Еще ссылки по теме:

C++ Непонятные символы при записи в файл
C++ Непонятные символы
Непонятные символы в output.txt - кодировка C++
Непонятные символы в консоли C++
Непонятные символы при выводе русских символов в консоли C++

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

Или воспользуйтесь поиском по форуму:
Evgeny FeiM
0 / 0 / 0
Регистрация: 20.02.2014
Сообщений: 6
21.02.2014, 19:24  [ТС]     Непонятные символы в консоли #7
DrOffset, всё, теперь ясно, спасибо!
Yandex
Объявления
21.02.2014, 19:24     Непонятные символы в консоли
Ответ Создать тему
Опции темы

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