mac 下 sublime text 运行c++/c 不能使用scanf/cin

时间:2024-05-23 08:37:38

这个学期又开了 算法课,又要写 C/C++ 了,于是在 mac 上的 Sublime Text3 试着写 C。

让 sublime 支持编译 C 的方法很简单。

依次点击 Tools,Build Sysytem,Build New System,复制粘贴以下代码:

  1. {
  2.      "cmd" : ["gcc", "$file_name", "-o", "${file_base_name}.exe", "-lm", "-Wall"],
  3.      "selector" : "source.c",
  4.      "shell":true,
  5.      "working_dir" : "$file_path",
  6.      "encoding" : "cp936",
  7.      "variants":
  8.      [
  9.         {
  10.             "name": "Run",
  11.             "cmd": ["${file_path}\\\\${file_base_name}.exe"]
  12.         }
  13.     ]
  14.  }

然后保存为 C.sublime-build (文件名C不重要,后缀要正确)

然后使用快捷键Command+Shift+B(win下是 Ctrl+Shift+B) ,Run 以下即可。

切换编译器是 Tools,Build System,然后选择一个,下次默认就是那个啦。

mac 下 sublime text 运行c++/c 不能使用scanf/cin

 

于是,写个 printf,向世界问个好,是能在下方正常输出的。

但是,scanf 却无效,无法输入,或者输入无效。

于是查了一下,最终将上面的 代码换成以下(重新新建,覆盖)的即可

  1. {
  2.     "cmd": ["g++", "${file}", "-o", "${file_path}/${file_base_name}"],
  3.     "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
  4.     "working_dir": "${file_path}",
  5.     "selector": "source.c, source.c++",
  6.     "variants":
  7.     [
  8.         {
  9.             "name": "Run",
  10.             "cmd": ["bash", "-c", "g++ '${file}' -o '${file_path}/${file_base_name}' && open -a Terminal.app '${file_path}/${file_base_name}'"]
  11.         }
  12.     ]
  13. }

 

修改了编译器代码后,这次如果有 scanf,系统会打开 终端,让我们输入,输出结果也就显示到终端了。虽然不是很满意,暂且凑合啦。

 

本文地址:https://liuyanzhao.com/6279.html