Linux+Sublime 开发C/C++ 中无法读取cin/scanf 的解决办法

Q:sublime在Ubuntu环境下配置好,能使用gcc编译运行程序后,发现cin,scanf 这样的命令不执行

A:sublime自带的控制台不支持这样的输入操作,解决办法就是调用Linux本地终端,在终端上执行程序,

   网上关于windows下调用cmd的例子已经好多了,可是却很少找到Linux环境下的配置方法,

     以下是我自己总结的方法,自己感觉很好用,希望可以帮到需要的朋友。

     1.Sublime界面-->Tools-->Build System-->New Build System,弹出一个简单的文件,把以下代码粘贴进去,

  最后结果如下所示:

{
    "cmd": ["g++ ${file} -o ${file_base_name}"], 
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "working_dir": "${file_path}",
    "selector": "source.c, source.c++",
    "shell": true,
    "variants":
    [
        {
            "name": "Run",
            "cmd": ["${file_path}/${file_base_name}"]
        },
        {
            "name": "RunInShell",
            "cmd": ["gnome-terminal -x bash -c '${file_path}/${file_base_name};read' "]
        }
    ]
}

     2.保存为g++.sublime-build,保存位置就是默认路径,即Packages-->User 目录下

     3.第三步,设置快捷键,Sublime界面-->Preferences-->Key Bindings-User, 打开后写入以下代码,结果如下所示

[
    { "keys": ["f8"], "command": "build","args": {"variant": "RunInShell"} },
]

  保存。

     4.这样就完成调用Linux下的终端了,Sublime写好C/C++程序后,

  ctrl+B编译程序,ctrl+shift+B使用Sublime自带的控制台运行程序,F8为调用Ubuntu终端运行程序。

 

  关键之处就在于一点,也是我废了点力气测试出来的,

"cmd": ["gnome-terminal -x bash -c '${file_path}/${file_base_name};read' "],

  这条代码就是调用gnome-terminal来执行程序,后面的;read 必须要加,否则程序执行完终端会闪退,加上以后程序执行完,敲回车关闭终端。

 

转载于:https://www.cnblogs.com/xxdfly/p/4692622.html

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值