【问题标题】:csharp on sublime not working properlysublime 上的 csharp 无法正常工作
【发布时间】:2016-02-25 13:41:21
【问题描述】:

我正在尝试在 Sublime 3 上运行 CSharp 的 Console.ReadLine(),但它无法正常工作。这是代码

using System;
using System.Collections;
class randomApp {
    public static void Main(string[] args) 
    {
       Console.Write("Please enter your name:");
       string name = Console.ReadLine();
       Console.WriteLine("Hello " + name);
    }
 }

你看到它输出为

请输入您的姓名:

但问题是当我尝试输入我的姓名并按 ENTER KEY 时,它不会输出最后一行

你好,名字

我已经在终端上试过了,它工作正常。我正在使用 Ubuntu 14.04、sublime 3 和包 compile and run。我怎样才能让它发挥作用?

【问题讨论】:

  • 请帮我格式化我的问题。谢谢
  • 感谢@valentin 的编辑
  • 最后需要一个 Console.ReadLine()

标签: c# sublimetext3


【解决方案1】:

您可以添加ReadKey() 来按住屏幕。 ReadLine() 期望按下 ENTER,所以 ReadKey() 会更好。

public static void Main(string[] args)
{
    Console.Write("Please enter your name:");
    string name = Console.ReadLine();
    Console.WriteLine("Hello " + name);
    Console.ReadKey();
}

【讨论】:

  • @johnpaulcavlo 请问this是否有用?
  • 天哪。我想我需要坚持使用终端
  • 没问题的伙伴 :) 我猜这更明智 ;)
  • 是的,非常感谢。我希望 sublime 能尽快解决这个问题,无论是 ubuntu、windows 还是等。感谢所有信息伙伴。 @SamGhatak。
  • 如果有帮助,请标记答案 - 这样对未来的访问者也有帮助;)。谢谢
【解决方案2】:

当您到达代码末尾时,程序将停止。 添加 Console.ReadLine(); 之类的内容,以便您的程序等待输入。

public static void Main(string[] args)
{
    Console.Write("Please enter your name:");
    string name = Console.ReadLine();
    Console.WriteLine("Hello " + name);
    Console.ReadLine();
}

【讨论】:

  • 刚试了一下,还是不行。该程序已经使用终端运行。我认为问题出在崇高 3 中。
【解决方案3】:

这可能是因为您使用的是 Linux 并且扩展“编译和运行”不支持它。

在 Windows 上测试您的代码时,它的工作方式完全符合预期。无需使用Console.ReadLine() 或其他人建议的任何其他类型的中断。

https://github.com/chrokh/csharp-build-singlefile-sublime-text-2 上用于 Compile & Run 的 ReadMe.md 文件声明它仅适用于 Windows 和 OSX。

扩展程序很可能需要 Windows/OSX 行尾 (EOL) 字符,而在程序中它只接收 Unix EOL 字符,因此不会终止行并将控制权返回给程序。

【讨论】:

  • @johnpaulcalvo 只要您安装了单声道,就绝对没有理由该插件无法在 Linux 上运行。它已经在命令行上运行,因此您只需调整.sublime-build 文件即可成功。你在命令行使用什么命令编译运行?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-04-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-01
  • 1970-01-01
  • 2014-10-23
相关资源
最近更新 更多