strlen和sizeof的區別與聯繫:
1.strlen是字符串函數,sizeof是運算符。(注意:一定要謹記sizeof不是函數是運算符)
2.sizeof可以把類型當做參數,eg:sizeof(int),strlen()對象只能是指向字符串類型的指針。
3.數組做sizeof參數不退化,傳遞給strlen就退化爲指針了。eg:char a[]='abcd'
sizeof(a)=5*1=5,這時a是數組,stlen(a)=5,此時a是指針。
(謹記:數組作爲參數傳遞給函數的時候,傳遞的是指針不是數組。所以在函數中計算sizeof(a)計算的是指針的大小)