简单的问题:我应该从控制台读取一些变量,但我不能使用控制台类。所以我在写这样的东西
using System;
using System.Runtime.InteropServices;
namespace ConsoleApplication153
{
class Program
{
static unsafe void Main()
{
printf("%s" + Environment.NewLine, "Input a number");
int* ptr;
scanf("%i", out ptr);
printf("%i", (*ptr).ToString());
}
[DllImport("msvcrt.dll", CallingConvention = CallingConvention.Cdecl)]
private static extern void printf(string format, string s);
[DllImport("msvcrt.dll", CallingConvention = CallingConvention.Cdecl)]
private static unsafe extern void scanf(string format, out int* ptr);
}
}
但它因 NullReferenceException 而失败。请帮忙,我该怎么做?Printf 有效,但 scanf - 无效。肿瘤坏死因子
好的。完整的任务听起来像这样:“如何在不使用控制台类的情况下从用户获取变量并在 C# 中打印它的值”。