C語言 -- strrev函數的使用


概念:

strrev()函數將字符串逆置,其原型為:char *strrev(char *str);

參數:

str為要逆置的字符串。strrev()將str所指的字符串逆置。

返回值:

返回指向逆置后的字符串的指針。也就是逆序后的結果要用字符串指針類型接收。

注意:

strrev()不會生成新字符串,而是修改原有字符串。因此它只能逆置字符數組,而不能逆置字符串指針指向的字符串,因為字符串指針指向的是字符串常量,常量不能被修改。

代碼示例:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
    char ch1[] = "adcd";

    printf("原先字符串:%s\n", ch1);//結果:abcd

    char *ch2 = strrev(ch1);

    printf("逆序后的字符串:%s\n", ch2);//結果:dcba

    system("pause");
}

如果改為這樣:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
    char ch1[] = "adcd";

    char *ch2 = strrev(ch1);

    printf("原先字符串:%s\n", ch1);     //結果:dcba
    
    printf("逆序后的字符串:%s\n", ch2); //結果:dcba

    system("pause");
}

結果一樣,因為修改原有字符串,所以原先的已經被修改過了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM