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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Егорка47
7 / 6 / 1
Регистрация: 26.10.2010
Сообщений: 249
#1

функция для чтения строки задом на перед - C++

15.12.2010, 14:39. Просмотров 758. Ответов 0
Метки нет (Все метки)

Здравствуйте.
вот функция
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
void reverse(char *str1,char *signs) // 2 задание по идеи
{
int i,n,a,b; //..
char *str2,*tmp; //..
str2=(char*)calloc(strlen(str1)+1,1); // что значит эта строка?
b=strlen(str1)-1; // б присваиваем длину строки стр1, а -1 почему?
do {
tmp=(char*)calloc(strlen(str1),1); // ???
for(i=b;i>=0;i--) { //.....
if(check_signs(str1[i],signs)) { // если 1 функция.????..то
a=i;
break;
}
else continue;
}
for(i=a;i>=0;i--) {
if(check_signs(str1[i],signs)==0) { // ????
b=i+1;
break;
}
else
if((i==0)&(check_signs(str1[i],signs)!=0)) { // ???
b=i;
break;
}
else continue;
}
n=a-b+1; // почему??
memcpy(tmp,&str1[b],n); // копируем содержимое строки тмп в стр1. так??
strcat(str2,tmp); // что это значит?
strcat(str2," "); // и это что?
b=b-1; // почему -1?
free(tmp); //освобождаем память
}
while(i!=0);
printf("\nNew string:\n\n");
for (i=0;i<strlen(str2)-1;i++)
printf("%c",*(str2+i));
printf("\n");
}
к этому заданию

Дана строка, содержащая текст на естественном языке. Напишите функцию, создающую новую строку, в которой все слова из старой строки следуют в обратном порядке и разделены одним знаком пробела. Исходная строка может содержать различные знаки-разделители (пробелы, запятые, точки и т.п.). Полный набор знаков-разделителей передается функции при её вызове.

Помогите с комментариями, заранее благодарен!

Добавлено через 1 минуту
Цитата Сообщение от Егорка47 Посмотреть сообщение
check_signs

вот эта функция
bool check_signs(char a,char *signs)
{
int i;
for (i=0;i<strlen(signs);i++){
if(a==signs[i])
return false;
}
return true;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.12.2010, 14:39     функция для чтения строки задом на перед
Посмотрите здесь:
Программа для вывода введенного слова задом на перед C++
строка задом на перед C++
C++ Функция для чтения из файла в матрицу
Нужно написать программу, которая читает из файла и пишет всё задом на перед C++
C++ Шаблонная функция для чтения целых чисел, дробных, строк из файла
C++ Функция для определения знака перед числом
C++ Функция addEven для добавления элементов перед первым элементом с четным значением
C++ Каким образом после чтения из файла, узнать позицию для чтения следующего куска байт
C++ чтение строки из файла задом наперед
Вывести буквы в словах строки задом-наперед C++
C++ Для заданной строки вывести на экран её символы, расположенные перед первой запятой
C++ Функция чтения из файла

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru