Ty,
Try this instead:
void ReverseArray(char Input[], char Reversed[])
{
int i;
int x;
int Index;
// Get the index of the first null character
for(x = 0; x < 50; x++)
{
if(Input[x] == '\0')
{
Index = x;
}
}
// Assign values to new array in reverse
for(i = 0; i < Index ; ++i)
{
Reversed[i] = Input[Index - 1 - i];
}
}
If you compare the code above to the code you posted you will notice that I use
Index instead of
x because
x will always equal 49. I also removed the line where you decremented the
x (which should have been the
Index variable) variable.
Hope my code works.
Einar
>I am having a problem reversing the values in an array. The program I'm writing asks the user to enter a word, then I call the ReverseArray() function to reverse the values and cout the word backwards. When printing the reversed array to the screen, I get a bunch of odd sequencial characters. This is the syntax for my ReverseArray() function.
>
>=======================================================
>void ReverseArray(char Input[], char Reversed[])
>{
>
> int i;
> int x;
> int Index;
>
> // Get the index of the first null character
> for(x = 0; x < 50; x++)
> {
> if(Input[x] == '\0')
> {
> Index = x;
> }
> }
>
> // Assign values to new array in reverse
> for(i = 0; i < x - 1; ++i)
> {
> x--;
> Reversed[i] = Input[x - i];
> }
>}
>
>=======================================================
>What am I doing wrong? From what I can see, it should work just fine. When outputting 'Reversed' to the screen it shows a sequence of '||' for each character entered.
Semper ubi sub ubi.