and_cesbo icon

C example

and_cesbo | PRO | 03/05/14 06:11:47 AM UTC | 0 ⭐ | 636 👁️ | Never ⏰ | []
C |

840 B

|

None

|

0 👍

/

0 👎

#include <stdio.h>
#include <unistd.h>
#include <string.h>
 
int main(int argc, const char **argv)
{
    char hello[] = "Enter string: ";
    write(1, hello, sizeof(hello));
    int len = 0;
    char buffer[256];
    while(1)
    {
        if(read(0, &buffer[len], 1) != 1)
        {
            printf("read() failed\n");
            return 1;
        }
        if(buffer[len] == '\n')
        {
            buffer[len] = 0;
            break;
        }
        ++len;
        if(len >= sizeof(buffer))
        {
            printf("buffer overflow\n");
            return 1;
        }
    }
    int i = len - 1, j = 0;
    while(i > j)
    {
        buffer[i] ^= buffer[j];
        buffer[j] ^= buffer[i];
        buffer[i] ^= buffer[j];
        ++j;
        --i;
    }
    printf("Result: %s\n", buffer);
    return 0;
}

Comments