我正在尝试对C程序进行实时调试,该程序使用VScode中的C / C ++扩展,还允许我使用scanf()将直接输入写入控制台。但是,当我调试代码时,它将打开调试控制台,该控制台不允许我输入任何输入。
我找到了两个线程,人们在其中回答了这个问题:
https://github.com/OmniSharp/omnisharp-vscode/issues/1053
Debug Console window cannot accept Console.ReadLine() input during debugging
两者都建议将launch.json文件中的“ console”属性设置为“ externalTerminal”或“ integratedTerminal”。但是,我找不到该属性或为此创建属性,因为它在我的文件中不存在。
我确实具有“ externalConsole”属性,可以将其设置为true或false。但是这两个选项似乎都像以前一样打开调试控制台。
launch.json文件:
@stencil(neighborhood = ((-4, 4),))
def ma(a):
cumul = 0
for i in range(-4, 5):
cumul += a[i]
return cumul / 9
当我尝试向调试控制台写入内容时会发生什么:
def wrapper(data, N):
@nb.stencil(neighborhood = ((int(-(N-1)/2), int((N-1)/2)),))
def ma(a):
cumul = 0
for i in np.arange(int(-(N-1)/2), int((N-1)/2)+1):
cumul += a[i]
return cumul / N
return ma(data)
答案 0 :(得分:-1)
在看到您的帖子之前,我同样感到困惑。在我的Windows环境中,我将“ externalConsole”设置为true。之后,当调试开始时,我的程序的cmd外壳(不是VScode提供的“调试控制台”)可以在其中键入stdin。!(https://i.stack.imgur.com/KKlJP.jpg)