Error while trying to reverse a char array

Posted by mpminnich on Stack Overflow See other posts from Stack Overflow or by mpminnich
Published on 2010-05-26T15:20:11Z Indexed on 2010/05/26 15:41 UTC
Read the original article Hit count: 131

Filed under:

Hi, I'm trying to get better at C++ (I know a little). I'm working on character arrays. I found an exercise where the objective is to reverse a character array (after I convert it from an integer). I'm getting the following error (using VS2005):

Run-Time Check Failure #2 - Stack around the variable 'revBuffer' was corrupted.

When I step through the code, I notice the following:

revBuffer = 0x0012fe40 "100899ÌÌÌÌÌÌÌÌÌÌ998001"

The relevant code is below.

    char buffer[5];
    char revBuffer[5];
    int i;
    int j=5;
    long number = 998001;

    itoa(number, buffer, 10);

    for(i=0; i<strlen(buffer);i++)
    {
        revBuffer[j] = buffer[i];
        j--;
    }

Any help would be great. TIA!

© Stack Overflow or respective owner

Related posts about c