我想知道在C#中是否有类似C scanf()
或printf()
的内容?
String [] a1;
String a = Console.ReadLine();
a1= s.split();
Int [] b;
for(...) {b[i] = Int32.Parse(a1[i])}...
我可以做scanf("%d %d %d %d %d", &a, ..., &e);
之类的事情吗?
答案 0 :(得分:2)
C#与printf
最接近的是Console.WriteLine
(或String.Format
输出到字符串)。语法不同但概念是相同的。例如printf("%4.2f",100)
变为Console.WriteLine("{0:0.00}",100);
没有相当于scanf
的内容。您需要使用Console.ReadLine
并手动解析字符串。
答案 1 :(得分:1)
经过一番环顾,似乎c#没有scanf
的实现。
但是,您可以使用regular expressions执行相同的操作
但是,它确实以String.Format() 的形式存在printf
的等价物
int i = 5;
double d = 5.0;
String.Format("this is an int:{0}, this is a double:{1}", i, d);
答案 2 :(得分:0)
[DllImport("msvcrt.dll", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.Cdecl)]
public static extern int scanf(string buffer, string format, ref int arg0, ref int arg1);
这会让你在C#中使用scanf,我认为:)
如果没有,则必须使用拆分和转换:)