回车 换行 字符串读取
①回车与换行
在Windows中:
‘\r’ 回车,回到当前行的行首,而不会换到下一行,如果接着输出的话,本行以前的内容会被逐一覆盖;’\n’ 换行,换到当前位置的下一行,而不会回到行首;
Unix系统里,每行结尾只有“<换行>”,即"\n";
Windows系统里面,每行结尾是“<回车><换行>”,即“\r\n”;
Mac系统里,每行结尾是“<回车>”,即"\r";
一个直接后果是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;
而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。
在Windows中读取Windows文件,getchar和fgetc会把\r吃掉,只剩下\n,所以不处理的话跨平台时会出现许多错误
②字符读取
int getc(FILE* stream); 从流中读取一个字符,并以整型返回,当读取失败或读到文档末尾,
返回EOF,因为EOF是-1,-1没有对应的字符,所以返回值是整型而不是字符型
getc() 相当于 fgetc(stdin)
③字符串读取
char* fgets(char*, int, FILE*);
读取完整一行,char buf[maxn],最多能读取maxn-1个字符,末尾自动加上’\0’,不会出现越界情况
一旦读到回车符’\n’就会停止,并且把回车符作为最后一个有效字符读入,结尾添加’\0’
如果使用fgets() 读取文件的时候bufsize大于该行的字符总数加2(多出来的两个,一个保存文件本身的’\n’换行,
一个保存字符串本身的结束标识’\0’),文件并不会继续读下去,仅仅只是这一行读取完,随后指向文件的指针会自动偏移至下一行。
如果读到了maxn-1个字符,还没读到’\n’,那就不以’\n’+’\0’结尾,仅以’\0’结尾
gets()存在缓冲区溢出漏洞,在C11中已被删除,但仍可以使用,但要避免使用
回车 换行 字符串读取相关推荐
- python字符串换行的三种方式_Python:怎样拼装超长字符串和包含回车换行字符串...
Python 中字符串可以使用单引号('--')或双引号("--")表示.反斜杠 \ 是转义字符.如果你不希望 \ 转义字符成特殊字符,可以在引号前添加 r 即可.如下所示: &q ...
- vba 读取linux换行符,【VBA研究】清除字符串中的回车换行符
作者:iamlaosong 如题,实际应用中,客户输入的地址中含有回车换行,导致格式转换中出错,因此需要清除掉,方法有二: 1.替换,这个方法只能清除一个回车换行 '检测地址中是否有回车换行 addr ...
- linux c 写文件 换行符,[Linux文件]带回车换行的写入字符串实例
[Linux文件]带回车换行的写入字符串实例 发布时间:2020-07-26 04:01:02 来源:51CTO 阅读:1802 作者:银河星君 //这是在上一个实例的基础上用strcat函数解决了回 ...
- Java 替换字符串中的回车换行符的方法
使用正则表达式进行替换: 代码片段: String documentTxt = EntityUtils.toString(entity,"gbk");//获取数据 documen ...
- SQL:查询、替换字符串中的回车、换行、回车换行
今天碰到一个问题,用字符串函数SUBSTRING截取字符串,给定的字符串数据中包含回车.换行.回车换行,导致截取失败.将字符串数据中的回车.换行.回车+换行处理之后就可以成功截取了. 1.判断字符串中 ...
- Lua操作字符串去除回车换行以及空格
Lua操作字符串去除回车换行以及空格 前言 lua的数据结构中string和table用的非常多,基本只要写lua脚本都会大量使用,其重要性不言而喻,这里主要说一下string去除回车换行和空格的方法 ...
- html字符串自动加回车换行,【HTML】处理br换行符追加到前端换行无效的问题 --- html中渲染的字符串中包含HTML标签无效的处理方法,字符串中包含HTML标签被转义的问题 解决...
需求如下图: 追加给前台后,效果如下: 可以在源码看到: 是将后台给出来的数据,直接当作字符串给填充在了前台HTML中. 而查看浏览器编译后的HTML源码可以发现: 原来字符串中的 的<> ...
- Java去除字符串中空格、制表符、回车换行的方法
\t 是制表符 \r\n 回车换行 注意:\r,\n的顺序是不能够对换的,否则不能实现换行的效果. 操作系统的不同,换行符操也不同: \r: return 到当前行的最左边. \n: newline ...
- js字符串去掉前后空格回车换行
问题: 需要规范用户在textarea框中输入的数据,需去掉字符串前后空格回车换行(字符串中间的不需要管) 解决: 直接使用trim()方法. var str= row.serviceNameModi ...
最新文章
- Laravel+Angularjs+D3打造可视化数据,RESTful+Ajax
- java使用链栈实现迷宫求解
- Linux grep不包含某些字符串的命令
- 编码练习——Java-6-类的高级特性
- Altium designer中设置PCB网络闭合(不闭合)
- Python安装教程分享
- WEB API Filter的使用以及执行顺序
- springboot No Identifier specified for entity的解决办法
- js截取字符长度加省略号
- python长度单位换算表_长度单位换算表大全
- eval函数python原理_Python 中 eval 函数的神奇用法
- 罗丹明 PEG 巯基,Rhodamine PEG Thiol,荧光染料标记巯基/硫醇
- ODBC连接数据库使用动态密码
- 【研究总结】基于出租车GPS轨迹数据的相关研究
- 学习笔记|领域自适应(Domain adaption)——实现模型的自适应迁移
- ESP8266 Arduino Hard resetting via RTS pin...
- Win10系统重装 华硕笔记本电脑
- unity文字逐个出现实现文字打印机效果
- 0基础小白学理财从入门到进阶 | 2019年最新书单
- ipad可以开发python_这15个应用,程序员用iPad照样可以编程!