![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c字符串处理
guozhiyingguo
嘻嘻哈哈~
展开
-
strlen()和sizeof()总结
1.strlen()为一个函数,用来计算字符串的长度,其原型为:unsigned int strlen (char *s);在计算时,从字符串的首地址开始搜索字符串结束符‘\0’,返回的值不包括结束的字符‘\0’。其中当s为字符数组时,也是搜索字符串结束符,所以一些情况要手工添加‘\0’例如:char b[] = "abcde";char aa[6];memcpy(aa,b原创 2016-10-26 10:55:37 · 598 阅读 · 0 评论 -
对EOF的理解(整理)
EOF就是文件尾的意思,一般被编译器定义为-1 倒不是说文件自己会自动生成一个EOF标志,而是你在用函数读入文件数据的时候,函数总会返回一个状态,是读取成功还是失败,那么这个状态怎么表示呢,所以就约定俗成定义一个标识符表示这个状态,就有了EOF,BOF等等EOF不是文件中有的。只不过是一个文件操作函数,在文件结尾操作时候返回的错误码。不要认为文件中含有EOF。 换行和回车是转载 2016-12-05 16:34:40 · 2588 阅读 · 0 评论 -
当读入一个数字,scanf()函数的写法
主函数是int main(){ int value=0; value=read(); printf("数字是%d\n",value); return 0;}一些测试用力1).15sdd\n2).16 1456\n3).aa 7\n4)a\nread()函数的写法一:int read(){ int原创 2016-11-02 11:27:05 · 3100 阅读 · 0 评论 -
fflush(stdin)使用误区
1. 为什么 fflush(stdin) 是错的?首先请看以下程序:include <stdio.h>int main( void ){int i;for (;;) { fputs(“Please input an integer: “, stdout); scanf(“%d”, &i); printf(“%d\n”, i);} return 0转载 2016-11-02 11:08:09 · 691 阅读 · 0 评论 -
由scanf说起之1:scanf函数和回车、空格 及其返回值
scanf和回车的关系: 先看一个我们经常使用的代码: char c; scanf("%c", &c); scanf 的各种格式中,%d、%c、%s三种最常用,通常都是以回车作为一次输入的结束。由于对字符解析方式及字符特点不同(如数字中一般不会出现空格回车等特殊字符)不同,%d格式一般不会在连续输入时,遇到问题。而%s和%c却会出现各种各样的问题,比如回车问题,空格问转载 2016-11-02 10:48:44 · 1192 阅读 · 0 评论 -
换行符是\n,\r\n???
说法一:换行符是\r\n 写程序时用\n说法二:windows下换行符是\r\n,UNIX下是\n说法三:用二进制方式时是\r\n,用文本方式时是\n说法四:是\r\n跟操作系统没关系,跟编辑软件有关系。当你在记事本或word编辑时,按下enter,该软件默认的方式是插入回车\r,再插入换行\n。当然如果在word下,按shift+enter,word这原创 2016-11-02 10:11:51 · 7040 阅读 · 0 评论 -
menmove()用法
头文件:#include memmove() 用来复制内存内容,其原型为: void * memmove(void *dest, const void *src, size_t num);memmove() 与 memcpy() 类似都是用来复制 src 所指的内存内容前 num 个字节到 dest 所指的地址上。不同的是,memmove() 更为灵活,当src 和转载 2016-10-27 15:09:43 · 709 阅读 · 0 评论 -
memchr与strchr的区别
NAME memchr, memrchr - scan memory for a characterSYNOPSIS #include void *memchr(const void *s, int c, size_t n); void *memrchr(const void *s, int c, size_t n)原创 2016-10-27 10:57:31 · 1396 阅读 · 0 评论 -
printf()输出格式
ref : http://www.cnblogs.com/yuaqua/archive/2011/10/21/2219856.html 小数点.后“*”表示输出位数,具体的数据来自参数表printf格式字符串中,与宽度控制和精度控制有关的常量都可以换成变量,方法就是使用一个“*”代替那个常量,然后在后面提供变量给“*”。同样,小数点.前也可以添加*,也要用户输入一个位宽值来代替转载 2016-10-27 09:42:02 · 524 阅读 · 0 评论 -
fread和read
fread与read的区别---open和fopen的区别--fread函数和fwrite函数fread与read的区别f是ANSI的C标准库。而后者的是UNIX下的系统调用。fread带有缓冲,是read的衍生,或者说fread是通过read实现的要想直接和硬件打交道,必须用readfopen/fread是C标准的库函数,操作的对象是: file st转载 2016-12-05 17:11:54 · 628 阅读 · 0 评论