Я хочу обновить массив символов, перевернув его.Массив символов корректен при выводе внутри функции, но не в main
после вызова функции.
Я считаю, что массив символов передается по ссылке, но при обновлении массива массив символов вОсновная функция не обновляется.Что я здесь не так делаю?
#include <iostream>
#include <cstring>
using namespace std;
void StringReverse(char *ch, int size){
char sh[100] = {0};
for(int i=0 ; i<size ; i++){
sh[i] = ch[size-1-i];
}
sh[size] = '\0';
ch = sh;
cout<<ch<<endl;
}
int main(){
char ch[100];
cin.getline(ch, 100);
int size = strlen(ch);
StringReverse(ch,size);
cout<<ch;
}
Я не хочу печатать результат внутри функции, но обновляю массив символов 'ch' в функции main
, вызывая функцию StringReverse
.