字符串的输入问题
2015-07-27 21:51
274 查看
字符串的输入问题:
1. 格式化输入函数:scanf("格式字符串", 地址);。将用户输入的数据与格式化字符串进行匹配, 将匹配到的数据赋值给地址所在的内存,使用 %s 作为字符串的格式,需要注意的是,当输入的字符超过数组长度时就会覆盖掉与该数组所占内存相邻的内存中的其他数据。而且有时系统不会报错。假如定义一个长度为5的char 型字符串数组,当输入12345abc时如下图模拟内存空间:
![](http://img.blog.csdn.net/20150727214445154?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
2. 其他输入字符串函数介绍:
(1). gets(数组名或者&变量名)函数,获取用户输入的字符串传给数组或变量。(我个人非常不喜欢使用它。)在xcode中使用该函数会直接在控制台报出警告。
(2). 引入库函数:string.h
c语言在:string.h中提供了一套库函数,常用的有:
strlen(字符串1)求字符串的长度。
strcpy(字符串1 ,字符串2)将字符串一赋值到字符串1中。
strcat(字符串 1 字符串2)将字符串2追加到字符串1中。
strcmp(字符串1,字符串2)比较两个字符串,返回值如果是正数则前者大,返回值如果为负数,则后者大。如果为零,则两个字符串相同。
1. 格式化输入函数:scanf("格式字符串", 地址);。将用户输入的数据与格式化字符串进行匹配, 将匹配到的数据赋值给地址所在的内存,使用 %s 作为字符串的格式,需要注意的是,当输入的字符超过数组长度时就会覆盖掉与该数组所占内存相邻的内存中的其他数据。而且有时系统不会报错。假如定义一个长度为5的char 型字符串数组,当输入12345abc时如下图模拟内存空间:
2. 其他输入字符串函数介绍:
(1). gets(数组名或者&变量名)函数,获取用户输入的字符串传给数组或变量。(我个人非常不喜欢使用它。)在xcode中使用该函数会直接在控制台报出警告。
(2). 引入库函数:string.h
c语言在:string.h中提供了一套库函数,常用的有:
strlen(字符串1)求字符串的长度。
strcpy(字符串1 ,字符串2)将字符串一赋值到字符串1中。
strcat(字符串 1 字符串2)将字符串2追加到字符串1中。
strcmp(字符串1,字符串2)比较两个字符串,返回值如果是正数则前者大,返回值如果为负数,则后者大。如果为零,则两个字符串相同。
相关文章推荐
- Virtual Environments for mac
- 字符串的输入问题
- Python reportlab教程
- 23种设计模式
- 结构体大小计算
- uva10534(DP之LIS的应用 )
- HDU 4288 Coder(模拟) 附:upper_bound与lower_bound的比较
- Java 里使用 long 类型的数据一定要在数值后面加上 “L”
- Centos7安装图形界面
- log4cpp-回滚文件
- POJ2115 C Looooops(扩展欧几里得)
- HDOJ 题目4276 The Ghost Blows Light(SPFA+树形DP)
- 1025约瑟夫问题
- IOS开发小项目—找色块游戏
- 7.27文字排版
- Object-C中需要注意的细节
- std::list与std::deque用法
- java生成验证码代码
- 颜色直方图特征代码
- 2531