Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [C++]можно пример с std::string


Автор: nikatin 19.6.2009, 11:01
C++


где он читая какоито файл txt может в нём поменять пару слов или кусочек предложения 

пример

мама сегодня приготовила борший

водим мама сегодня борший
затем папа вчера пюре

ив резулитате чтобы пулучилоси

папа вчера приготовил пюре

Автор: zim22 19.6.2009, 11:07
объединяйтесь с toader. у вас задача одинаковая. вместе веселей.
http://forum.vingrad.ru/index.php?showtopic=263704&view=findpost&p=1899661

Автор: nikatin 19.6.2009, 11:23
Цитата(zim22 @ 19.6.2009,  11:07)
объединяйтесь с toader. у вас задача одинаковая. вместе веселей.
http://forum.vingrad.ru/index.php?showtopic=263704&view=findpost&p=1899661

я поиском пользовался нашёл его код, поэтому и спросил std::string остольное всё понял

Добавлено через 3 минуты и 16 секунд
мне вот подсказали нужно исполизовать getline

Автор: zim22 19.6.2009, 11:27
Цитата(nikatin @  19.6.2009,  11:23 Найти цитируемый пост)
 поэтому и спросил std::string 

Код

#include <string>
#include <iostream>

std::string s;
getline(std::cin, s);

пример ввода:
hello my friend ENTER
строка s содержит hello my friend

Автор: nikatin 19.6.2009, 11:42
Цитата(zim22 @ 19.6.2009,  11:27)
Цитата(nikatin @  19.6.2009,  11:23 Найти цитируемый пост)
 поэтому и спросил std::string 

Код

#include <string>
#include <iostream>

std::string s;
getline(std::cin, s);

пример ввода:
hello my friend ENTER
строка s содержит hello my friend

да я это уже понел)) 
http://cplusplus.com/reference/string/getline/
 большое спасибо)

Добавлено через 4 минуты и 14 секунд
а нет(( с getline всё в порядке.. проблема в std::string word; оно только одно слово читает(

Добавлено через 5 минут и 27 секунд
while (!finp.eof() && !(finp >> word).fail())   

можно узнать как проверять больше?(

Автор: nikatin 19.6.2009, 12:11
вот мне подскозали что можно исполизовать getchar и сделать свой Writeln как в Паскале чтобы читал Стринг 1,2,3,4,5... до \n и сделать место \н \о и чтобы он делал Writeln до \0

ктото может с этим помочи?

Автор: nikatin 19.6.2009, 12:31
я нашол чтото интересное 

Код

         string ReadLine(void)
         { string s = "";
           while (true)
           { char c = getchar();
             if (c=='\n' || c==EOF) break;
             s=s+c; }
           return s; }


можно както прикрепить? чтобы getchar читал?
Код


#include <iostream>
#include <fstream>
#include <string>
#include <iterator>
#include <algorithm>
#include <stdio.h>
using namespace std;
int main()
{
    string line;
    ifstream finp("./src/example.txt");
    ofstream fout("./src/example2.txt");
    if (!finp || !fout)
    {
        std::cout << "Error opening file\n";
        return 1;
    }

    copy(istream_iterator<char>(finp >> noskipws), istream_iterator<char>(), ostream_iterator<char>(cout));
    finp.clear();
    finp.seekg(0);
    finp.setf(ios_base::skipws);
    std::string word;
    std::string n;
    cout << endl;
    cout << endl;

    string ReadLine(void)
    {
     string s = " ";
     while (true)
     { char c = getchar();
     if (c=='\n' || c==EOF) break;
     s=s+c; }
     return s; 
    }

    cout << "Ce cuvint doritzi sa modificatzi? : ";
    getline(std::cin, m);
    cout << "Cu ce cuvint doritzi sal modificatzi? : ";
    getline(std::cin, n);
    bool found = false;
    while (!finp.eof() && !(finp >> word).fail())
    {
     if (word == c)
            {
                fout << n << " ";
                found = true;
            }
     else
            fout << word << " ";
    }
        if (!found)
            cout << "Asha cuvint nu exista in propozitzia data!!!!!!\n";
}


Автор: zim22 19.6.2009, 13:39
Цитата(nikatin @  19.6.2009,  12:31 Найти цитируемый пост)
я нашол чтото интересное 

подумайте головой. вырывание кусков кода из чужих исходников вам не поможет. 

Автор: azesmcar 19.6.2009, 17:01
Цитата(nikatin @  19.6.2009,  11:42 Найти цитируемый пост)
while (!finp.eof() && !(finp >> word).fail())   

какой знакомы код smile 
а вы не смотрели его предназначение в том месте откуда копировали? smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)