2019-11-12

1.低精度数可以存入高精度变量,此处精度指的是小数点后的情况,而非数据类型;

2.斐波那契数列的崩溃问题还没有解决;

3.字符串:

过去涉及字符时,要对单一字符进行操作,当有多个字符要同时进行操作,单一的字符变量就不能实现,此时应当使用字符串。字符串是数组的一种表现形式。

例:char s[5]={“aasd”};是字符串                 char s[5]={“a”};也是一个字符串

实际上,每一个字符串在其结束的位置都有一个\0并占一个元素位置,若想定义一个空的字符串可以写作:char s[5]={“\0”};

输出字符串的时候,写作:printf(“%s”,s);这里应当注意,上面提到的\0时printf输出函数的终止字符,当printf()输出过程中遇到该字符会停止输出;

当字符串溢出时,如char s[5]={“aasas”}即报错,如上所述,字符串都会在定义的内容后补一个\0并占一个元素位置,所以字符串所能容纳的元素数量为定义中的数量-1;

当字符串未满时,在定义内容后全补\0,该字符码值为0

字符串输入时,若使用scanf函数,写作scanf(“%s”,ss);不用取地址符。使用scanf输入字符串时,若超过字符串长度,则计算机从暂存到内存覆盖的过程失败,但暂存中还存在该数据,所以依然可以输出,并且长度与输入相同。

字符串转到单一字符:当做数组处理即可,比如数组第一位写作s[0];

4.getchar()函数,输入字符;putchar()函数,输出字符;

gets()函数,获取字符串;puts()函数,输出字符串。注意,puts()函数输出结束后会自动换行。

相似地,两个实用函数

getch()函数,从控制台读取一个字符但不显示在控制台;

getche()函数,从控制台读取一个字符并回显

这两个函数在c++环境下,应预处理包含头文件conio.h。但在c环境下,可以在stdio.h头文件中直接使用。

5.几个直接处理字符串的函数:

memcmp(s1,s2.4)即memcmp(字符串1,字符串2,要比较的长度x),函数返回值:若s1较大,返回值为1,相同返回0,s2大返回-1。逐个比较,出现结果直接返回并结束比较;比较次数为括号中第三位的数字x;

strcmp(s1,s2)即strcmp(字符串1,字符串2),返回值:若s1较大,返回值为1,相同返回0,s2大返回-1。逐个比较,出现结果直接返回并结束比较;比较次数为整体比较,直到字符串结束;

memcpy(s1,s2,4)即memcpy(字符串1,字符串2,项数x),用于把s2的前x项复制到s1

strcpy(s1,s2)即strcpy(字符串1,字符串2),用于把s2复制到s1,并忽略项数;

strcat(s1,s2)即stract(字符串1,字符串2),用于把字符串2接到字符串1后;

strlen(s)返回值:字符串s的长度;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容