两行不同的c语法?

标签 c coding-style

我有一个关于 C 语法的简单问题。当我们写:

  printf("hello world
  ");

编译器产生错误。为什么?在另一种情况下:

  for (i = 0; i < MAXLINE - 1      
  && (c=getchar)) != EOF && c != '\n'; ++i)

一切编译正常。所有这一切的一般规则是什么?

谢谢!

最佳答案

字符串文字 ("...") 不能包含空的换行符。

如果你想在字符串中使用换行符,使用\n转义序列(`"hello world\n")

关于两行不同的c语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7531644/

相关文章:

javascript 闭包和函数放置

lua - 从 Lua 中的(最简单的)函数直接返回表条目

python - 如何在 Python 中为类似 "sifter"的行为设计控制流?

c - ATmega328 上 timer2 的奇怪行为

c - 将 execv() 与 PATH 环境变量一起使用

c - 当函数只有中间部分不同时,避免重复代码

asynchronous - 进行多个异步调用并在它们完成时做一些事情

c - fgetc 不工作 C-重复返回相同的字符

c++ - 使用库时运行时检查失败 #0

C# 进阶路径