Sunday, 19 October 2014

Write String reverse

#include<stdio.h>
char * strrev(char* str)
{
     int length=0;
     char* str1=str;

     while(*str++)
        ++length;

     str=str1;
     char  temp;

     for ( int i=0; i< length/2; ++i)
     {
           temp= *(str +i);
           *(str +i) = *(str+length -1-i);
           *(str+length -1-i)= temp;
     }

     return str1;
}
int main()
{
    char str[]="Hello World!";
    strrev(str);
    printf("Reversed str:%s", str);

    return 0;

}

Write String copy operation.

#include<stdio.h>

char* mystrcpy(char * dest, char* source )
{
   char* dest1=dest;

   while(*dest++ = *source++)
   {
   }
   return dest1;

}
int main()
{

    char str2[30];
    char str1[]="Hello World!";
    char* str3=mystrcpy(str2,str1);
    printf("Str2 : %s\n", str2);
    printf("Str3 : %s", str3);
    return 0;
}