关于windows、Linux、mac的换行符

对于换行这个动作,Unix下一般只有一个 0x0A 表示换行("\n"),Windows 下一般都是 0x0D 和 0x0A 两个字符,即 0D0A("\r\n"),苹果机(MAC OS系统)则采用回车符 CR 表示下一行("\r")。

Unix 系统中:每行结尾只有 "<换行>",即 "\n";

Windows 系统中:每行结尾是 "<回车><换行>",即 "\r\n";

Mac 系统中:每行结尾是 "<回车>",即 "\r"。

不同系统所定义的换行格式不同,导致的直接后果是,Unix/Mac 系统下的文件在 Windows 里打开的话,所有文字会变成一行;而 Windows 里的文件在 Unix/Linux 下打开的话,在每行的结尾会多车一个 ^M 字符。

在编写代码时,可考虑如下形式

#include<stdio.h>
#include<stdlib.h>

int main()
{
int num_1,num_2,sum,N,T;
char ch;
scanf("%d",&T);
while(T--){
  scanf("%d",&N);
  sum = num_2 = num_1 = 0;
  if(N!=0){
    for(int i = 0; i<N;i++){
    scanf(" %c",&ch); //在这里添加了一个空格(space,ASCII码为32)于 %c前, 
    if(ch==41){
      if(num_1 == 0) sum++;
      else num_1--;
    }
    else if(ch==40) num_1++;
     }
  sum +=num_1;
  }
  printf("%d\n",sum);
}
return 0;
}

猜你喜欢

转载自www.cnblogs.com/love-coding/p/12919345.html
今日推荐