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

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

Войти
Регистрация
Восстановить пароль
 
dzrkot
zzzZZZ...
519 / 349 / 53
Регистрация: 11.09.2013
Сообщений: 2,004
#1

Преобразовать string в int .? - C++

04.11.2013, 18:20. Просмотров 341. Ответов 9
Метки нет (Все метки)

строки 66 и 71 соответственно, считываю из файла в string, как преобразовать? кроме static_cast не знаю
И по прежнему не понимаю как выровнять выводимую информацию относительно друг друга, через setw() и right не получается...
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#include <iostream>
#include <fstream>
#include <conio.h>
#include <string>
#include <iomanip>
 
using namespace std;
struct bstr
    {
    int year;
    int number;
    };
int main()
{
    int sum=0;
    int counter=0;
    int s,cntr;
    cntr=0;
    int nb, year;
    string namefile;
    cout<<"Please enter created file name:  ";
    cin>>namefile;
    namefile.append(".txt\0");// - присваивает строке s значение строки str. Аналогично запис // nb - NumberBuild - кол-во зданий , year - год улицы
    cout<<"Created file:    "<<namefile;
    ofstream ofs(namefile.c_str()); //создаем сам файл т.к. fstream его не создаст
    ofs.close();
    fstream f;
    f.open(namefile.c_str());//создание потока
    cout<<"\nInput the number of strings:   ";
    cin>>s;//количество строк в файле
    string str;
    for(int i=0;i<s;i++)//считывание строк с консоли и перевод в поток
    {
    cout<<"String number "<<i+1<<endl;
    cout<<"please enter street name:    ";
    cin>>str;
    f<<str<<"   ";
    cout<<"please enter number builds:  ";
    cin>>nb;
    cout<<"please enter year of builds: ";
    f<<right<<nb<<"   ";
    cin>>year;
    f<<right<<year<<"\n";
    cntr++;
    }
    f.clear();
    f.seekg(0);
    int counterIndexArray=0;
    int *cntrNumber=new int[s];
    int *cntYear=new int[s];
        while(!f.eof())
        {
 
        f>>str;
        if (f.eof())
        break;
            switch (counter)
            {
            case 0:
            cout<<right<<"\nName of street:"<<str<<endl;
            counterIndexArray++;
            break;
 
            case 1:
            cout<<right<<"number:"<<str<<endl;
            cntrNumber[counterIndexArray]=str;
            break;
 
            case 2:
            cout<<right<<"year:"<<right<<str<<endl;
            cntYear[counterIndexArray]=str;
            break;
            }
        counter++;
            if (counter==3)
            counter=0;
        }
    int valYear;
    cout<<"\nPlease enter year:";
    cin>>valYear;
    for (int i=0;i<s;i++)
    {
    if (cntrYear[counterIndexArray]==valYear)
    sum+=cntrNumber[counterIndexArray];
    }
    cout<<"sum="<<sum;
    f.close();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2013, 18:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Преобразовать string в int .? (C++):

Преобразовать int в string - C++
Как перевести переменную int в string?

Как преобразовать string в int ? С++ - C++
Здравствуйте, можете объяснить как преобразовать string в int ? С++. Объясните как можно проще, так-как я недавно начал изучать...

Как преобразовать строку string в int? - C++
имеется строка string которая содержит такие наборы символов - &quot;0,0,0,3,32,253,0,0,43&quot; необходимо цифры записать в матрицу а запятые...

Стандартно преобразовать int в соответствующий string - C++
1. Как красиво и стандартно сделать из int-а - string, чтобы с ним дальше немедленно работать. 2. Разумеется можно написать свою короткую...

Помогите новичку - как преобразовать int к string - C++
Помогите новичку Как делать преобразование к классу int gcc version 2.95.3 20010315 (release)

Как преобразовать один элемент String в Int - C++
Всем привет. Возник вопрос, как преобразовать один элемент стринга в инт. То есть: std::string s = &quot;543&quot;; int i = std::atoi(&amp;s); i =...

9
Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
04.11.2013, 18:29 #2
C++
1
2
3
#include <cstdlib>
 
int atoi (const char * str);
0
dzrkot
zzzZZZ...
519 / 349 / 53
Регистрация: 11.09.2013
Сообщений: 2,004
04.11.2013, 18:32  [ТС] #3
нашёл сам. потом вспомнил что читал это когда-то))
atoi( str.c_str() )
0
Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
04.11.2013, 18:38 #4
C++
1
cout << setw(a) << value_1 << setw(b) << value_2;
где a количество символов для value_1 и b - для value_2
0
ТОрчОК
Заблокирован
04.11.2013, 18:53 #5
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
#include <iostream> 
#include <string>
using namespace std; 
 
void f (std::string str)
{ 
    const char* ch = str.c_str();
    int i = 0;
    while(*ch != '\0')
    {
        i += *ch - '0';
        i = i * 10;
        ch++;
    }
    i = i/10;
    std::cout << i;
}
 
int main () 
{ 
    f("666");
    system("pause");
    return 0; 
}
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
04.11.2013, 18:54 #6
strtol и т.п.
0
Croessmah
Эксперт CЭксперт С++
13416 / 7570 / 855
Регистрация: 27.09.2012
Сообщений: 18,632
Записей в блоге: 3
Завершенные тесты: 1
04.11.2013, 18:57 #7
C++
1
2
3
4
5
6
7
8
#include <sstream>
 
int StrToInt ( const std :: string & str ) {
    int result = 0 ;
    std :: stringstream ss ( str ) ;
    ss >> result ;
    return result ;
}
0
Hrobak
289 / 169 / 11
Регистрация: 22.03.2010
Сообщений: 483
Завершенные тесты: 1
04.11.2013, 20:03 #8
Ну если в C++11, то std::stoi (const std::string &) есть.
0
rangerx
1933 / 1542 / 141
Регистрация: 31.05.2009
Сообщений: 2,913
04.11.2013, 20:28 #9
Croessmah, а если str окажется не числом?
0
Croessmah
Эксперт CЭксперт С++
13416 / 7570 / 855
Регистрация: 27.09.2012
Сообщений: 18,632
Записей в блоге: 3
Завершенные тесты: 1
04.11.2013, 22:20 #10
Цитата Сообщение от rangerx Посмотреть сообщение
Croessmah, а если str окажется не числом?
Вернет 0. А не нужно пихать не проверенные данные
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.11.2013, 22:20
Привет! Вот еще темы с ответами:

8-и значное число типа int преобразовать в строчку char\string - C++
Подскажите, есть ли какая-нибудь функция, которая загоняет число в строчку. Например есть 8-и значное число (тип int) и мне нужно его...

error C2664: Display: невозможно преобразовать параметр 1 из 'int [5]' в 'int" - C++
Добрый вечер! Прошу помочь, так как сам только начал изучать СПП (поэтому отнеситесь с пониманием)). #include &lt;stdio.h&gt; #include...

Ошибка error C2440: инициализация: невозможно преобразовать 'int' в 'int []' - C++
// ConsoleApplication9.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot; #include &lt;iostream&gt; ...

error C2664: InputMatrixCurrent: невозможно преобразовать параметр 1 из 'int [5][5]' в 'int' - C++
Помогите поправить код, а то выдаёт ошибки #include &quot;stdafx.h&quot; #include &quot;iostream&quot; using namespace std; void...


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

Или воспользуйтесь поиском по форуму:
10
Yandex
Объявления
04.11.2013, 22:20
Ответ Создать тему
Опции темы

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