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

Реверс строки в стиле Си - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Почему не сохраняется в векторе строка? http://www.cyberforum.ru/cpp-beginners/thread861977.html
Здравствуйте! Проблема в том, что строки не сохраняются в векторе строк, хотя передаю их по ссылке: #include <iostream> #include <vector> #include <fstream> void readf( std::vector <...
C++ memset() Здравсвуйте. У меня возник вопрос касательно memset().Есть код: #include <iostream> #include <memory.h> #include <cstdio> using namespace std; long long n,ans=0,thing,i,c,cost; bool flag; http://www.cyberforum.ru/cpp-beginners/thread861974.html
узнать количество элементов через указатель C++
#include"cards.h" #include"cards2.h" #include<string> #include<iostream> #include<conio.h> #include<vector> template<class T> class cards { T card; T suit;
C++ Алгоритм Хаффмана
Добрый день!Есть у кого исходники Сжатие по алгоритму Хаффмана,написанные на СИ(с ассемблерными вставками).Заранее благодарю
C++ Выход за границы массива http://www.cyberforum.ru/cpp-beginners/thread861967.html
Выхожу за пределы массива, но вот только не понимаю как. #include <iostream> #include <fstream> using namespace std; const int n = 10; const int m = 6; int main()
C++ Я не прошу писать мне код, я прошу подсказать мне, что за структура требуется в задании Написать программу для работы по запросам оператора с приоритетной очередью запросов. Куча отображается в память двоичным деревом. Приоритет - целое число. Запрос - строка произвольной длины. ... подробнее

Показать сообщение отдельно
Croessmah
Эксперт CЭксперт С++
13415 / 7566 / 855
Регистрация: 27.09.2012
Сообщений: 18,618
Записей в блоге: 3
Завершенные тесты: 1
11.05.2013, 23:18
Вариант:
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
#include<iostream>
 
 
void strreverse(char * str){
    char * pEnd=str;
    char temp;
    if(!str)
        return;
    while(*pEnd)
        ++pEnd;
    for(--pEnd;str<pEnd;++str,--pEnd){
        temp=*str;
        *str=*pEnd;
        *pEnd=temp;
    }
}
 
 
 
int main(){
    char text[]="My buffer!";
    strreverse(text);
    std::cout<<text<<std::endl;
    return 0;
}
Добавлено через 5 минут
Еще вариант:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void strreverse(char *arr,size_t size,int nLast=0){
    if(!(nLast<size)) return;
    char n=*(arr+nLast);
    strreverse(arr,size,nLast+1);
    *(arr+size-nLast-1)=n;
}
 
 
 
int main(){
    char text[]="My buffer";
    strreverse(text,strlen(text));
    std::cout<<text<<std::endl;
    return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru