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

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

Войти
Регистрация
Восстановить пароль
 
necronth
0 / 0 / 0
Регистрация: 04.04.2014
Сообщений: 13
#1

Сравнение переменных разных типов - C++

09.07.2014, 22:36. Просмотров 806. Ответов 4
Метки нет (Все метки)

Здравствуйте. Столкнулся с проблемой не совпадения типов данных. Есть переменная string str, которая, к примеру, имеет значение "1245". Необходимо в переменную string str2 записать все остальные цифры без нуля (то есть 36789). Сам код написал, но проблема в том, что при сравнении string и int (счетчик цикла) выводит всегда false. Как можно исправить/избежать это? Вот сам код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
for(int x = 0; x < 9; x++)
    for(int y = 0; y < 9; y++)
        if(number[x][y] != "x")
            trueNumber[x][y] = number[x][y];
        else
            for(int i = 1; i < 10; i++)
                for(int j = 0; j < int(newNumber[x][y].length()); j++)
                {
                    if(newNumber[x][y][j] == i)
                        continue;
                    else if(j - 1 == newNumber[x][y].length())
                        trueNumber[x][y] += i;
                }
number, newNumber и trueNumber - строки. Заранее извиняюсь, если неправильно назвал или описал какие-то вещи, так как я самоучка. Также буду благодарен, если вы напишете готовый код.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.07.2014, 22:36     Сравнение переменных разных типов
Посмотрите здесь:

Сравнение типов - C++
есть функция: void equalSep(char* str) { // пытаюсь сравнить str и &quot;.&quot; или любой другой символ } как мне сделать...

Преобразование типов переменных - C++
Осуществить преобразование типов переменных явным и неявным способом по следующим схемам: float → short int short int → int char →...

Матрица из разных типов - C++
хочу создать клас Matrix елементы обьектов которого могли бы быть разных типов. была идея создать клас Cell и определить его как...

Указатели разных типов - C++
Добрый день уважаемые форумчане !!! Хочу уточнить для себя следующую деталь. Есть базовый класс Fada и производные от него Tasa ...

Хранение разных типов - C++
Приветствую всех. Возник вот такой вопрос. У меня есть, например, 3 разных структуры, каждая из которых имеет разные поля: struct one ...

Сложение разных типов - C++
У меня из файла в переменную int считывется число.. Мне нужно занести в переменную string это число + строка. Например int...

Сравнение типов во время компиляции - C++
как можно сравнить типы во время компиляции? хотел попробовать сделать что то вроде std::basic_string, надо чтобы выкидывало ошибку...

Сравнение типов шаблонных классов - C++
Добрый день. Есть некоторый шаблонный класс (структура): template&lt;int m, int n&gt; struct A { }; Возьмем некоторый...

Ввод и вывод типов переменных - C++
Ребята, помогите пожалуйста! У меня практика, а c++ builder вообще не изучали(((( Вообщем, задание такое: Организовать ввод и вывод данных...

Объявление переменных различных типов - C++
Совсем не понимаю задачу Помогите пожалуйста!! ...

Цвет собственных типов переменных в C++ - C++
Здрасте! Что необходимо сделать, чтобы собственные типы переменных в окне &quot;Код&quot; отображался синим цветом, а не чёрным? Вот, к примеру,...

Использование разных типов указателей - C++
Здравствуйте! Программа должна засерать переменную n, а вместо этого она забивает мусором переменную upper. Можете подсказать в чём дело? ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
deniska91
54 / 3 / 3
Регистрация: 17.05.2014
Сообщений: 72
09.07.2014, 23:15     Сравнение переменных разных типов #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <string>
#include <stdlib.h>
 
using namespace std;
 
int main()
{
    string s1 = "1457";
    string s2;
    char ch[2];
    for (int i = 1; i < 10; i++)
    {
        itoa(i, &ch, 10);
        if (s1.find_first_of(ch) == string::npos) s2 += ch;
    }
    cout << s2;
    return 0;
}
necronth
0 / 0 / 0
Регистрация: 04.04.2014
Сообщений: 13
09.07.2014, 23:54  [ТС]     Сравнение переменных разных типов #3
Большое спасибо!
Tulosba
:)
Эксперт С++
4392 / 3235 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
10.07.2014, 00:06     Сравнение переменных разных типов #4
deniska91, можно обойтись и без нестандартной itoa:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <string>
 
int main() {
    
    std::string src = "1245";
    
    for( int i=1; i<10; ++i )
    {
        const char ch = '0' + i;
        if( src.find(ch) == std::string::npos )
        {
            std::cout << ch; // Выводим сразу для демонстрации
        }
    }
    return 0;
}
deniska91
54 / 3 / 3
Регистрация: 17.05.2014
Сообщений: 72
10.07.2014, 00:10     Сравнение переменных разных типов #5
Tulosba, согласен, не додумался
Yandex
Объявления
10.07.2014, 00:10     Сравнение переменных разных типов
Ответ Создать тему
Опции темы

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