以下代码是把一个字符串倒序,如“abcd”倒序后变为“dcba”) U# y% D1 C5 D N. W9 n) |0 P* M& {
#include
! N1 z1 _8 a( i. C" [, T#include 9 C: z7 a* O5 n8 U- \( g
int main(){
' y8 Z2 t& `0 b) F* f& mchar*s,*src = "hello,world";
9 a* Y5 M& W1 x/ nint len = strlen(src);
" @" J/ [8 B9 I1 `3 k" `4 E) n$ Eint len1=sizeof(src);* S: g* O0 }3 B+ P4 {8 M {
/*char*d,*dest=(char*)malloc(len+1);*/
! k, x1 d1 c+ i0 n2 J* V- }/ ^9 @char*d,*dest=(char*)malloc(sizeof(src));
/ Q; d+ z* h8 Tprintf("%d,%d",len,len1);/*测试strlen(src);sizeof(src);*/' G2 t, t) l c
' H/ j! w0 @+ ]* d. sd=dest;7 I2 o4 h* b& a" e
s=&src[len-1];1 l) a0 {6 W7 b G: U
while( len-- != 0 )
* l6 M3 }9 a, n*d++=*s--;/ g3 T- Q& ?" D6 l7 V5 w2 ?" t$ s
*d='\0';% [8 a0 s' U4 Q6 v7 ]1 t" l1 ~
printf("%s\n",dest);/ c; P+ e* f! ?' N9 P& j- U
free(dest);
2 j9 r( l" N3 x2 D% j8 K$ Creturn 0;5 K* C2 o" [6 X3 p8 k
}
! q! |5 E" g l其中
: G! ~) O* k( }, z*dest=(char*)malloc(len+1);
5 {: G" ^# P/ d2 A* ]% w A+ d*dest=(char*)malloc(sizeof(src));的malloc参数值不同(11,2),效果却是一样的
--------------------next---------------------
阅读(523) | 评论(0) | 转发(0) |