You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C语言代码编译报错:缺失终止'"'字符(CS50x作业求助)

解决编译错误:missing terminating '"' character

你的错误出在原始字符串字面量的语法使用错误:C11的原始字符串格式是R"分隔符(内容)分隔符",你在代码结尾多写了一个多余的双引号。

看你的代码最后一行:

)EOF");

这里的)EOF"已经是原始字符串的结束标记,后面不需要再加双引号。多余的引号让编译器无法匹配正确的引号对,从而抛出missing terminating '"' character错误。

修正后的代码

#include <stdio.h>
#include <cs50.h>

int main(void)
{
printf(R"EOF(
   _____       _               _ _   _           _   _              _____           _
  / ____|     | |             (_) | | |         | | | |            / ____|         (_)
 | (___  _   _| |__  _ __ ___  _| |_| |_ ___  __| | | |__  _   _  | |    _   _ _ __ ___  __
  \___ \| | | | '_ \| '_ ` _ \| | __| __/ _ \/ _` | | '_ \| | | | | |   | | | | '__| \ \/ /
  ____) | |_| | |_) | | | | | | | |_| ||  __/ (_| | | |_) | |_| | | |___| |_| | |  | |>  <
 |_____/ \__,_|_.__/|_| |_| |_|_|\__|\__\___|\__,_| |_.__/ \__, |  \_____\__, |_|  |_/_/\_\
                                                            __/ |         __/ |
                                                           |___/         |___/
)EOF);
}

(仅将最后一行的)EOF");改为)EOF);)

修正后,编译器就能正确识别原始字符串的边界,你的ASCII图案会被原样输出。

内容的提问来源于stack exchange,提问作者Cyrix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 18:42:08