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

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

Войти
Регистрация
Восстановить пароль
 
Nialit
Сообщений: n/a
#1

Условие строки в цикле while - C++

11.06.2012, 18:53. Просмотров 493. Ответов 4
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
 
int main(){
char* answer = new char[10];
while ( answer!="y")
{
    cout << "Купи слоника! "; cin >> answer;
}
}
answer получает свое значение, но условие в цикле не выполняется(собственно, почему?). Если задать char без указателя(просто символ), то все работает, но мне нужна именно строка, чтобы при вводе более 1 символа, цикл не повторялся до тех пор, пока каждый символ не будет проверен на соответствие.
Спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.06.2012, 18:53     Условие строки в цикле while
Посмотрите здесь:

C++ Изменение строки в цикле
C++ Как в цикле перебрать все элементы отдельного столбца или строки?
C++ Не срабатывает условие в цикле while не могу понять почему
Ошибка в цикле C++
C++ Объсните эксперты как реализовать последнее условие, Уплотнить заданную матрицу, удаляя из нее строки и столбцы, заполненные нулями
Матрица (Начиная с 1-й строки матрицы, в цикле печатать показания датчиков) C++
Правильно задать условие в цикле C++
C++ Условие в цикле
Сложное условие в цикле C++
Как задать условие того, что следующий символ строки точка C++
Условие в цикле do while работает не так, как ожидается C++
C++ Не выполняется условие в while цикле

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Andrey.K
341 / 262 / 15
Регистрация: 14.11.2010
Сообщений: 482
11.06.2012, 19:23     Условие строки в цикле while #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include <string>
using namespace std;
 
int main(){
char* answer = new char[10];
string s="y";
while ( answer!=s)
{
    cout << "Купи слоника! "; cin >> answer;
}
}
Catstail
Модератор
22317 / 10722 / 1744
Регистрация: 12.02.2012
Сообщений: 17,798
11.06.2012, 19:26     Условие строки в цикле while #3
Хм... Для сравнения строк нужно использовать strcmp:

C++
1
2
while (strcmp(answer,"y"))
...
Nialit
Сообщений: n/a
11.06.2012, 19:26     Условие строки в цикле while #4
Спасибо
g-h
67 / 67 / 1
Регистрация: 03.06.2012
Сообщений: 176
11.06.2012, 19:45     Условие строки в цикле while #5
C++
1
2
3
4
while (strcmp(answer,"y") == 0)
{
   cout << "Купи слоника! "; cin >> answer;
}
Yandex
Объявления
11.06.2012, 19:45     Условие строки в цикле while
Ответ Создать тему
Опции темы

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