c语言字符串strl复制转换,C语言字符串基础学习

字符串与字符数组都是描述由多个字符构成的数据,字符串借用字符数组来完成处理。但请注意:

(1)表示字符串数据用双引号表示,而字符数据用单引号。

(2)字符串的长度可以根据串中字符个数临时确定,而字符数组的长度必须事先规定。

(3)对字符串,系统在串尾加’\O’作为字符串的结束标志,而字符数组并不要求最后一个字符为’\O’。

(4)用字符数组来处理字符串时,字符数组的长度应比要处理的字符串长度大1,以存放串尾结束符’\O’。

例如:

static char city[9]= ’c’,’h’,’a’,’n’,’g‘,’s’,’h’,’a’,’\0\').可用字符串描述为:

static char city[9]={\"changsha\")或\"changsha\";

上述两条语句可分别理解为用字符数组来处理字符串,用字符串对字符数组初始化。但千万请注意不能在程序中给字符数组赋值。中国自学编程网整理发布例如:

city一\"changsha\";/*绝对错误*/

下面介绍用字符数组来处理字符串的一些整体操作。

1.输入输出输入输出用scan{()、printf()函数完成,采用”%s”格式。输入输出参数用字符数组名。

例如,有如下程序:

main()

{char comp[:9];

scan{(”%s”,comp);/*本身就是地址,不需加地址运算符*/

print{COMP=%s”,comp);

}

输入数据:CHINAONE

运行结果:COMP—CHINAONE

说明:

(1)输入字符串数据时不需用界定符。

(2)输入多个字符串数据时,以空格分隔数据。如果字符串数据本身包含有空格字符,需采用特殊处理。

(3)输出先找到存放字符串的字符数组的首地址,遇串尾结束符’\0’结束。输出字符不包括串尾结束符’\O’。

(5)如果字符数组长度大于字符串实际长度,也只输出到’\O’结束。

2.字符串处理函数

puts()与gets()函数包含在头文件stdio.h中,字符串处理函数包含在头文件string.h中,用#include,,String.h”指明。

在以下的函数中,参数str、str1、str2为字符数组类型或指向字符的指针类型。

(1)puts(str)

输出指定字符串。参数可以为字符串常量。

(2)gets(str)

从键盘输入字符串至字符数组str中,输入的字符串可以包含空格。函数的返回值是字符数组str的首地址。

(3)strcpy(strl,str2)

将str2的值复制到strl中,实际上完成字符串的赋值操作。要求strl的长度大于str2的长度,第二个参数可以是字符串常量。

(4)strcat(strl,str2)

将str2的值连接到strl中原有值的后面。注意strl必须足够大,以便能容纳两个字符数组中的所有值。连接完成后,两个字符串并成一个字符串,第一个字符串后面的原结束符自动取消。[Page]

(5)strcmp(st订,str2)

比较strl和str2,若两者相同,返回函数值为0;若strl大于str2,返回函数值为一个正整数;若strl小于str2,返回函数值为一个负整数。

字符串比较规则与其它语言相同,将两个字符串中的字符从左至右依次比较,如果全部字符相同,则认为相等;若出现不同字符,则以第一个不同字符比较结果为准。

两个参数可以是字符串常量。

(6)strlen(str)

函数的返回值为字符串的实际长度。

(7)strlwr-(str)

将字符串中大写字母转换成小写字母。

(8)strupr’(str)

将字符串中小写字母转换成大写字母。

(4)如果字符数组中包含多个’\O’,输出遇到第一个’\0’结束。

本文来源:搜集于网络

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值