Вот пример из самоучителя Шилдта по С++.
Программа должна выполнять перестановку символов в строке.
Компилю с gcc. И получаю после отработки "Segmentation fault".
Не подскажите ли в чем дело?
Заранее благодарен за помощь.
#include <iostream>
#include <cstring>
using namespace std;
void reverse(char *str, int count = 0);
int main()
{
char *s1 = "Это проверка";
char *s2 = "Мне нравится C++";
reverse(s1); // Реверс всей строки
reverse(s2, 7); //Реверс первых семи знаков
cout << s1 << '\n';
cout << s2 << '\n';
return 0; }
void reverse(char *str, int count)
{ int i, j;
char temp;
if(!count) count = strlen(str) - 1;
for(i=0, j=count; i<j; i++, j--) {
temp = str[ i ];
str[ i ] = str[ j ];
str[ j ] = temp;
}
}