|
|
|
| Как разбить строку на отдельные слова, допустим есть такой код:
char string[] = "King:Russia"
нужно разбить общую строку, на слова King и Russia, и вывод сделать примерно такой:
Name: King living: Russia
cout << "Name: " << name << "living: " << country << endl;
Пробовал с помощью strtok, но чет не получилось, оно тока King и вытаскивает. | |
|
|
|
|
|
|
|
для: zaraza
(22.04.2007 в 07:04)
| | тебе надо создать вот такую строку - char ,pat[]=". ,!?\/""''(){};:-", обьявдяешь указатель на свою строку - char *p=string, а теперь в цикле при помощи функции strspn находишь первое вхождении символа и его адрес в строке выглядит это так p+=strspn(p,pat), и с помощью strcspn адрес последнего символа p+=strcspn(p,pat). и теперь у тя есть начало слова и конец. соединяй. | |
|
|
|
|
|
|
|
для: timaslook
(22.04.2007 в 13:31)
| | Чушь, ищу других вариантов. | |
|
|
|
|
|
|
|
для: zaraza
(22.04.2007 в 13:51)
| | Воспользуйтесь классом std::string:
#include <stdio.h>
#include <string>
using namespace std;
void main(void)
{
string str = "I Robot";
printf("%s",str.substr(0,str.find(" ")).c_str());
return;
}
|
| |
|
|
|