5. main( )
{
char str1[ ] = ”Nagpur” ;
char str2[ ] = ”Ahmedabad” ;
int l3 ;
sl1tr =le xsnst rt(lr eslentrn(1 s( ) ts r;t1r 1) ;) ;
int l1 ;
l2 = xstrlen ( str2 ) ;
while ( *p != ’0’ )
}
p
N a g p u r 0
401 2 3 4 5 7
6 9
xstrlen ( c h a r * p )
6
{
int count = 0 ;
{
}
count ++ ; }
p
p++ ;
return ( count ) ;
6
401
int l2 ;
printf ( ”%d%d”, l1, l2 ) ;
l3 = xstrlen ( ”Baroda” ) ;
printf ( ”%d”, l3 ) ;
6. Copying Strings
main( )
{
char str1[ ] = ”Nagpur” ;
char str2[ 10 ] ;
char str3[ 20 ] ;
str2 = str1 ;
strcpy ( str2, str1 ) ;
N
s
a g p u r
printf ( ”%s”, str2 ) ;
xstrcpy ( str3, ”Bombay” ) ;
while ( *s != ’0’ )
}x
strcpy ( char *t, char *s )
Bombay
{
{
}
}
printf ( ”%s”, str3 ) ;
*t = *s ;
N a g p u r 0
t
Nagpur
xstrcpy ( str2, str1 ) ;
t++ ;
s++ ;
*t = ’0’ ;
7. More Ways...
xstrcpy ( char *t, char *s )
{
while ( *s != ’0’ )
t++ ;
s++ ;
*t = ’0’ ;
}
{
*t = *s ;
}
xstrcpy ( char *t, char *s )
{
while ( *s )
*t++ = *s++ ;
*t = ’0’ ;
}
xstrcpy ( char *t, char *s )
{
while ( *t++ = *s++ )
}
N a g p u r 0
;
s s
t t
N a g p u r 0
*t = *s
while ( *t )
t++
s++
wwhhiillee (( ii == 22 ))
8. Concatenation
char str1[ ] = ”Nagpur” ;
char str2[ ] = ”Bombay” ;
xstrcat ( str1, str2 ) ;
printf ( ”%s”, str1 ) ;
}
xstrcat ( char *t, char *s )
{
while ( *t )
t++ ;
while ( *s )
*t++ = *s++ ;
*t = ’0’ ;
}
NagpurBombay
t
t
N a g p u r 0
s
B o m b a y 0
main( )
{
20
9. A Shorter Version...
xstrcat ( char *t, char *s )
{
while ( *t )
t++ ;
while ( *s )
*t++ = *s++ ;
*t = ’0’ ;
}
t = t + strlen ( t ) ;
t t
N a g p u r 0
s
B o m b a y 0
strcpy ( t, s ) ;