我们有一个代码,我们希望将其移植到主CLI为PowerShell的环境中。它有一些问题,所以我把代码缩小到最简单:
#include "stdafx.h"
#include <stdio.h>
#include <string.h>
int main()
{
int ch =0;
printf("hello world");
while ((ch = getchar()) != '\n' && ch != EOF)
printf("%c", ch);
return 0;
}
此应用程序在VS2015中编译为Win32控制台应用程序并在cygwin,VS调试器,cmd上按预期运行,但是当我从Powershell运行它时,它会进入无限循环,直到我按下CTRL + C. 我已经四处搜索替代品,替换输入函数,但基本上我们希望保持我们的代码多平台和普通C(没有.NET函数等)。 使用从stdin读取的函数(如scanf,gets)的简单程序也会出现同样的问题。 我们怎样才能在PowerShell下运行这个简单的程序?
提前致谢。
更新 我能够在PC上的常规Powershell中运行这个应用程序,之前我使用的是Powershell ISE,它仍然没有在那里工作。
但是当从Windows 10物联网仪表板(我这个项目的最终目的地)的远程PowerShell上使用相同的应用程序时 - 行为仍然不如预期。