将更大的字符串存储到arr [num]

时间:2014-01-21 12:45:34

标签: c arrays printf

我在在线C测试中看到了这个问题

#include<stdio.h> 

int main()
{ 
 char arr[11]="The African Queen"; 
 printf("%s",arr); 

 return 0; 
} 
  

将打印什么:a a非洲女王b b   非洲
对编译错误&lt; -t这是该网站的答案

但是我运行它是因为我回答了C而我刚收到警告warning: initializer-string for array of chars is too long并打印出C!是因为我使用了不同的编译器吗?或答案是错的?

1 个答案:

答案 0 :(得分:0)

这取决于编译器。

gcc提供warning: initializer-string for array of chars is too long [enabled by default] 并打印The African

Windows上的

Turbo c++会给编译器错误Too many initializers

有一件事@BLUEPIXY说 e。 arr [10]'n'不是以'\ 0'结尾。