在编写应该是一个非常简单的程序(在K&R C书中)时,我得到了一些我不理解的输出.如果我EOF马上nl_count就是0,但space_count总是32767(最大int范围的一半),并且tab_count是一个很大的值(通常非常高或非常低).
当我将所有变量初始化为0时,程序正常工作.我在这里错过了什么?
10 int main(void)
11 {
12 int tab_count, space_count, nl_count;
13
14 //tab_count = space_count = nl_count = 0;
15
16 int c;
17 while( (c = getchar()) != EOF ){
18 if( c == '\t' )
19 tab_count++;
20 if( c == ' ' )
21 space_count++;
22 if( c == '\n' )
23 nl_count++;
24 }
25
26 printf("\n");
27 printf("TABS = %d\n", tab_count);
28 …Run Code Online (Sandbox Code Playgroud) 我不确定我在这里做错了什么.这是一个特殊格式的日期命令,我正在尝试将其命名为日期.我得到的错误信息是找不到格式.
这是命令 -
alias date='date +'%A, %B %d, %Y - %r''
Run Code Online (Sandbox Code Playgroud)