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

конкатенация строк char* - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ целое положительное К, за которым следуют К вещественных чисел. Определите, сколько из них отрицательных. Найдите наибольшее из них http://www.cyberforum.ru/cpp-beginners/thread702744.html
Исходные данные : целое положительное К, за которым следуют К вещественных чисел. Определите, сколько из них отрицательных. Найдите наибольшее из них. (только не используя массивы,и напишите...
C++ Структура, с использованием контейнера библиотеки STL Помогите, пожалуйста,с задачкой. Следующие задания реализовать в виде класса, используя для хранения информации контейнер стандартной библиотеки шаблонов (STL) языка С++. задание: Запись о... http://www.cyberforum.ru/cpp-beginners/thread702738.html
Прочитать строку из файла и записать ее в массив структуры C++
Подскажите как это сделать.Есть файлик со строчками,чтобы он каждую строчку считывал в массив,отличный от другого.Одна строка будет char,вторая тоже char, а третья int
считать матрицу C++
Помогите пожалуйста! В файле дана такая инфа 4н 66 3 4 кк 44 9 4 4 5 нужно считать матрицу такого вида 4 66 3 4 44 9 4 4 5 Нужно использовать поток fstream
C++ Проверка матрицы http://www.cyberforum.ru/cpp-beginners/thread702723.html
Задание: считать с файла квадратную матрицу, найти ее определитель и вывести результат в другой файл. В догонку преподаватель задал сделать проверку на "квадратность" матрицы (удалять лишние...
C++ Дано х, у. Определить, принадлежит ли точка (х,у) области, указанной на рисунке. Условие задачи таково: Дано х, у. Определить, принадлежит ли точка (х,у) области, указанной на рисунке. #include <stdafx.h> #include <stdio.h> #include <iostream> int main (void) { подробнее

Показать сообщение отдельно
ninja3
0 / 0 / 0
Регистрация: 19.11.2012
Сообщений: 3

конкатенация строк char* - C++

19.11.2012, 23:09. Просмотров 1366. Ответов 0
Метки (Все метки)

Здарова господа!
Есть задача. Нужно выбрать из строки каждое слово и первый символ слова переместить в конец этого слова и добавить 2 символа ay. Допустим есть слово jump. j переносим в конец umpj и добавляем ay тоесть umpjay
вот код:
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
90
91
92
93
94
95
96
97
98
99
//svin9cha9 leksema
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
 
#include <cstdlib>//prototip dl9 rand i srand
using std::rand;
using std::srand;
 
#include <ctime>//prototip dl9 time
using std::time;
 
#include <cstring> //prototip dl9 strcmp i strncmp
using std::strcat;//konkatenasi9 strok
using std::strncat;
using std::strtok;//naxodit leksemu
 
void printLatinWord(const char*);//peredat6 leksemu i vuvesti polychivweec9 slovo
 
int main()
{
    char str[]="jump the computer";//stroka
    char* leksema;//ykazatel6 na leksemy
    
    //rozbivaem na leksemu
    leksema=strtok(str," ");
    
    //prodoljaem razbienie
    while(leksema!=NULL)
    {
        printLatinWord(leksema);
        leksema=strtok(NULL," ");//polychit6 sledyuchyu leksemy
    }
    
//  cout <<"str= "<<str<<endl;
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    return 0;
 
 
}
 
void printLatinWord(const char*s)
{
    char b=s[0];//naxjdits9 pervui simvol slova
    cout <<"b= "<<b<<endl;
    char pr[40]="";
    
    
    
    //strcat(pr,s);//dovavl9em pervui element nazad
    strcat(pr,s+1);
    //strcat(pr,b);
    strcat(pr,"ay");
    
    s=s+1;//ydal9em pervui simvol
    cout <<"s= "<<s;
    cout <<" s+1= "<<s+1;
    cout <<" s[1]= "<<s[1];
    
    cout <<" pr= "<<pr<<endl;
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
 
 
}
функции printLatinWord передаем указатель на лексему.
создаю char b и присваиваю ему первый символ слова b=s[0];
-затем перезаписываю слово без первого символа strcat(pr,s+1);
-дальше добавляю первый символ который сохранен в b в конец строки pr //strcat(pr,b); и тут вылазит ошибка
ошибка: некорректное преобразование из «char» в «const char*» [-fpermissive]
непонятно чо она вылезла?
Как мне первый символ слова перенести в конец слова????
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru