黑马程序员技术交流社区

标题: 让初学者搞清字符串处理函数的总结 [打印本页]

作者: macau    时间: 2015-1-13 01:24
标题: 让初学者搞清字符串处理函数的总结
---------
初学者学会字符串处理函数 ,自我总结归纳的内容,不明白的地方请大家指出来,希望能够帮助您,谢谢!
1.
puts 函数
         格式为   
                  puts  (字符串数组)   
               可以输出转义字符 ,如
               char  str [ ] = { " China\n Bei jing " }  ;
               puts ( str )  ;      
               输出的结果为   China
                                       Bing jing
               总结 :输出完成后会自动换行,平时用到比较少,可以用printf代替。


2. gets 函数
        格式为
                 gets (字符数组)
              从键盘输入一个字符串数到字符数组,得到一个函数值,该函数值是字符数组的首地址。
              与scanf函数不同,  gets函数不以空格作为字符串输入结束标志,只以回车作为输入结束。
              总结 :一般利用gets函数的目的是向字符数组输入一个字符串。


3. strcat 函数
          格式为 (字符数组1,字符数组2)
          其作用是连接两个字符数组中的字符串,例如
                  char  str1 [ 50 ]  = { " China " } ;      //  注意字符数组1的数组长度必须足够大,以便能容纳下后面连接的新字符 ,否则会因为长度不够而出问题
                  char  str2 [ ]  = { "hao nan ren " } ;
                  printf("%s",strcat ( str1 , str2 ) ) ;        
              输出结果为:
                                 China hao nan ren
              注意 : 连接前两个字符串的后面都有 ' \0 ' ,只是在连接时将字符串1后面的 ' \0 ' 自动取消。




4. strcpy 函数
         格式为
          1) strcpy ( 字符数组1,字符串2 )   
             字符串复制函数,作用是将字符串2复制到字符数组1中去。例如
       char  str1 [20 ] = " NBA USA " ;
       char str2 [  ]  = ‘ ’;       //  str2可以是字符数组名,也可以是一个字符常量
       strcpy  ( str1 , str2 ) ;   //   str1 拷贝到 str2 中覆盖 str2 中的值,str1这时连同 \0一起拷贝 , 注意 str2 的字符串数组长度要足够长

5. strcmp 函数
              strcmp (字符串1,字符串2)     
              它的作用是比较字符串1和字符串2。例如
              if(strcmp ( str1 , str2 )  >0 )     
                printf ( " yes " ) ;


             通常容易犯这样的错:
                     if(str1>str2)
                        printf ( "ye s" ) ;


            结论 :字符串1 = 字符串2, 函数值为 0
                       字符串1 > 字符串2 ,函数值为一个正整数
                       字符串1 < 字符串2 ,函数值为一个负整数




6. strlen 函数
           格式为
                strlen ( 字符数组 )
              作用是计算字符串实际长度的函数(不抱扩‘ \0 ' 在内)。例如
               char str [6] = { " nba" } ;
              printf( " %d " , strlen ( str ) ) ;
              结果输出的不是 6,也不是 4 ,而是 3 。
              可以直接计算字符串常量的长度 : strlen ( "nba " ) ;


作者: pcy1022    时间: 2015-1-13 07:51
太好了,太全了,多谢分享。
作者: macau    时间: 2015-1-13 11:06
pcy1022 发表于 2015-1-13 07:51
太好了,太全了,多谢分享。

一起学习,一起分享
作者: woaiwomama    时间: 2015-1-13 13:01
视频里面好像没这个知识点啊
作者: macau    时间: 2015-1-14 00:55
有些编程题目中会用到的..




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2