linux C与重定向问题

图片描述

为什么我的输入在b.txt里只显示2行,为什么少个换行符
这个程序在windows下就没有问题,Windows显示3行(第3行什么都没有)

#include <stdio.h>

int main(void)

{

int ch;

while ((ch = getchar()) != EOF)

putchar(ch);

return 0;

}

回答:

跟重定向没啥关系,跟windowsLinux上换行符不同也没关系...

Linux的终端上(或者gedit)最后一个\n不会新显示一行

即使你将windows下生成的文件放到Linux下,也会发现没有新起一行。(记得先用UltraEdit把\r\n换成\n,也就是0x0D 0x0A换成 0x0D)

回答:

linux的换行符和windows不一样,linux是n,windows是rn

以上是 linux C与重定向问题 的全部内容, 来源链接: utcz.com/p/195285.html

回到顶部