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

Текст и числа в одной переменной - C++

Восстановить пароль Регистрация
 
parkito
 Аватар для parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 685
02.04.2011, 13:49     Текст и числа в одной переменной #1
Как организовать следующее:
программа просит пользователя ввести имя файла (имя может содержать цифры), потом к этому имени прибавляется какое - либо число или строка, или символ. После этого программе говориться чтобы она записала такой-то (исходя) файл на диск Д.


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
int main()
{setlocale(LC_ALL, "Russian");
    bool a = true;
    int b = 0;
    string c;
    cout<<"Введите имя файла"
cin>>Переменная;
b=3
     c="D:\\"+b"text";
        ofstream outfile;
outfile.open(c);
cout<<"Пиши, это будет в файле"<<b<<endl;
outfile<<"Привет это номер"<<b<<endl;
 
outfile.close();
 
    
    return 0;
}

Моя конструкция не рабочая, созданная мною лишь для демонстрации сути.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nameless One
Эксперт С++
 Аватар для Nameless One
5755 / 3404 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
02.04.2011, 14:14     Текст и числа в одной переменной #2
Чтобы в С++ сделать хранение в одной переменной значений разных типов, то можно сделать обертку в виде класса для объединения (union) переменных необходимых типов.

Добавлено через 4 минуты
Это можно сделать как здесь, но лично я не вижу необходимости в таком средстве. В твоем случае можно (если я правильно понял суть задания) обойтись только строковой переменной
parkito
 Аватар для parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 685
02.04.2011, 14:38  [ТС]     Текст и числа в одной переменной #3
Цитата Сообщение от Nameless One Посмотреть сообщение
В твоем случае можно (если я правильно понял суть задания) обойтись только строковой переменной
Можно поподробнее ?
Nameless One
Эксперт С++
 Аватар для Nameless One
5755 / 3404 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
02.04.2011, 14:41     Текст и числа в одной переменной #4
parkito, хранить прибавляемое число в виде строки
parkito
 Аватар для parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 685
02.04.2011, 14:44  [ТС]     Текст и числа в одной переменной #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
25
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
int main()
{setlocale(LC_ALL, "Russian");
        bool a = true;
        int b = 0,z;
        string c;
        while (b<4)
        cout<<"Введите имя файла";
cin>>z;
 
 
         c="D:\\"+b"text";
                ofstream outfile;
outfile.open(c);
cout<<"Пиши, это будет в файле"<<b<<endl;
outfile<<"Привет это номер"<<b<<endl;
 
outfile.close();
 
}
        return 0;
}
Nameless One
Эксперт С++
 Аватар для Nameless One
5755 / 3404 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
02.04.2011, 14:52     Текст и числа в одной переменной #6
parkito, можно оставить это значение в виде числовой переменной и переводить его в строку при необходимости добавления (конкатенации)
parkito
 Аватар для parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 685
02.04.2011, 14:58  [ТС]     Текст и числа в одной переменной #7
Каким образом? С конвертацией типов я не знаком, а как сделать конкатенацию с строковым типом и числовым тоже не врублюсь.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.04.2011, 15:13     Текст и числа в одной переменной
Еще ссылки по теме:

C++ Многочлен от одной переменной
C++ Поиск одной переменной под другой
C++ Отсортировать вектор структур по одной переменной через qsort

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

Или воспользуйтесь поиском по форуму:
Nameless One
Эксперт С++
 Аватар для Nameless One
5755 / 3404 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
02.04.2011, 15:13     Текст и числа в одной переменной #8
Пример: функция type_to_string будет переводить в строку любой тип, для которого задан оператор вывода в поток:
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
#include <iostream>
#include <sstream>
#include <cstdlib>
 
template <class T>
std::string type_to_string(const T&);
 
int main()
{
    std::string s("Text to concatenate with: ");
    int val;
    std::cout << "Input an integer: ";
    std::cin >> val;
    std::cout << "Converted value, concatenated with string:"
          << std::endl
          << s + type_to_string(val) << std::endl;
    
    return 0;
}
 
template <class T>
std::string type_to_string(const T& val)
{
    std::ostringstream oss;
    oss << val;
    return oss.str();
}
При этом, если ты передашь в type_to_string объект std::string, то функция в результате работы вернет аналогичную строку.
Yandex
Объявления
02.04.2011, 15:13     Текст и числа в одной переменной
Ответ Создать тему
Опции темы

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