我最近开始在C#中启动方法,但我一直收到错误"程序不包含适合入口点的静态'Main'方法"。我已经尝试将一些静态void方法更改为Main,但它不起作用。我也尝试添加一个静态的void Main((,但它也不起作用。
using System;
namespace L07_Req1_FunMethods
{
public class Conversions
{
static void Write()
{
Console.Write("Enter the number of degrees Farenheit you would like to convert to Celcius: ");
}
static int far = Convert.ToInt32(Console.ReadLine());
static double cel = .555555555 * (far - 32);
static void fToC()
{
Console.WriteLine("{0} degrees Farenheit is equal to {1} degrees Celcius.", far, cel);
Console.Write("Now enter the number of Celcius you would like to convert to Farenheit: ");
}
static int cel2 = Convert.ToInt32(Console.ReadLine());
static double far2 = (cel2 + 32) / .5555555555;
static void cToF()
{
Console.WriteLine("{0} degrees Celcius is equal to {1} degrees Farenheit.", cel2, far2);
Console.ReadKey();
}
}
}
这是我尝试添加静态void Main((的代码使用系统;
namespace L07_Req1_FunMethods
{
public class Conversions
{
static void Main()
{
}
static void Write()
{
Console.Write("Enter the number of degrees Farenheit you would like to convert to Celcius: ");
}
static int far = Convert.ToInt32(Console.ReadLine());
static double cel = .555555555 * (far - 32);
static void fToC()
{
Console.WriteLine("{0} degrees Farenheit is equal to {1} degrees Celcius.", far, cel);
Console.Write("Now enter the number of Celcius you would like to convert to Farenheit: ");
}
static int cel2 = Convert.ToInt32(Console.ReadLine());
static double far2 = (cel2 + 32) / .5555555555;
static void cToF()
{
Console.WriteLine("{0} degrees Celcius is equal to {1} degrees Farenheit.", cel2, far2);
Console.ReadKey();
}
}
}
控制台应用程序启动时,操作系统会调用Main()
方法。这就是为什么它抱怨它不存在。这就是所谓的"切入点"。这就是操作系统开始运行代码的方式。
您所拥有的是一个类的一堆方法和字段,但没有任何方法可以开始运行您的代码。
我敢肯定,你想要Main
方法中的所有代码,比如:
namespace L07_Req1_FunMethods
{
public class Conversions
{
static void Main()
{
Console.Write("Enter the number of degrees Farenheit you would like to convert to Celcius: ");
int far = Convert.ToInt32(Console.ReadLine());
double cel = .555555555 * (far - 32);
Console.WriteLine("{0} degrees Farenheit is equal to {1} degrees Celcius.", far, cel);
Console.Write("Now enter the number of Celcius you would like to convert to Farenheit: ");
int cel2 = Convert.ToInt32(Console.ReadLine());
double far2 = (cel2 + 32) / .5555555555;
Console.WriteLine("{0} degrees Celcius is equal to {1} degrees Farenheit.", cel2, far2);
Console.ReadKey();
}
}
}
Main
方法可以具有不同的签名。方法签名是指返回类型和参数的组合。例如,如果你想从命令行将参数传递到程序中,你可以创建这样的Main
方法:
static void Main(string[] args)
命令行中的所有参数都将在args
数组中。
这里有关于Main
方法的更多详细信息:Main((和命令行参数。你会在这篇文章的左边看到,它只是一系列文章中的一篇。您可以继续阅读以了解有关控制台应用程序如何工作的更多信息。