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


Автор: xaxx 28.11.2006, 00:58
есть какоето предложение
нужно найти начало каждого слова в этом предложении и первую букву заменить...
подскажите пож=-та как это сдклатьsmile

Автор: RatHat 28.11.2006, 01:09
xaxx, парсить предложение...
Следующий за пробелом символ, входящий в алфавит, является первой буквой слова.

Автор: ip127001 28.11.2006, 08:06
#include<iostream.h>
#include<fstream.h>
#include<vector>
#include<conio.h>
#include<string>

Код

int main()
{
//типа файлы с которыми мы работаем
  ifstream infile("1.txt"); //от куда берем слова
                            // из 1.txt    
  string word;
  vector<string> _mas;  
     if(!infile) return -1;
       while(infile>>word){
         _mas.push_back(word);      
  
       }
    getch();
/*
 если надо предложение с консоли скачать то меняешь
условие в while на (cin>>word)

*/   
а из string я думаю не составит труда вытащить 1 символ.. :) 
   return 0;
}

Автор: xaxx 28.11.2006, 12:26
спасибо

Автор: Voldemar2004 28.11.2006, 13:04
Не удержался и доделал:
Код
#include <iostream>
#include <fstream>
#include <vector>

//---------------------------------------------------------------------------

int main()
{

  std::ifstream infile("d:\\TEST.xxx");

  std::string word;
  std::vector<std::string> _mas;

     if(!infile) return -1;

       while(infile >> word)
       {
         _mas.push_back(word);
          char *buffer = (char*)word.c_str();

          std::cout << buffer[0] << '\t';
       }

  std::cin.get();

return 0;
}
//---------------------------------------------------------------------------

Автор: ip127001 1.12.2006, 07:54
Цитата(Voldemar2004 @  28.11.2006,  13:04 Найти цитируемый пост)
Не удержался и доделал:


 smile 

Автор: xaxx 8.12.2006, 01:24
ну а как же их теперь изенить,и то только те которые я хочу и вставить в исходное предложение изменеными???
эт я спрашиваю  у вас для подстраховки,мало ли сам не сделаю..
но я в принципе знаю как..
но все жеsmile)

Автор: Кнером 8.12.2006, 04:43
xaxx, знаешь, делай. Не всё же за тебя будут делать. Учись думать своей головой.

Автор: Daevaorn 8.12.2006, 09:43
Мне вот эти строки очень понравилисьsmile
Цитата(Voldemar2004 @  28.11.2006,  14:04 Найти цитируемый пост)
char *buffer = (char*)word.c_str();

          std::cout << buffer[0] << '\t';


Автор: ip127001 8.12.2006, 12:03
Цитата(Daevaorn @  8.12.2006,  09:43 Найти цитируемый пост)
Мне вот эти строки очень понравились

Цитата(Voldemar2004 @  28.11.2006,  14:04 )
char *buffer = (char*)word.c_str();

          std::cout << buffer[0] << '\t';


гг..прикольно! а я и не заметил...

Автор: Voldemar2004 9.12.2006, 17:33
Цитата(Daevaorn @  8.12.2006,  09:43 Найти цитируемый пост)
Мне вот эти строки очень понравились


Цитата(ip127001 @  8.12.2006,  12:03 Найти цитируемый пост)
гг..прикольно! а я и не заметил...

Код
char *buffer = (char*)word.c_str();

          std::cout << buffer[0] << '\t';
А что, прикольного? smile

Автор: Daevaorn 9.12.2006, 17:40
Цитата(Voldemar2004 @  9.12.2006,  18:33 Найти цитируемый пост)
А что, прикольного?  

А почему нельзя написать так:
Код

std::cout << word[0] << '\t';

?

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