用户:天上的流星_tianqiVirus查看:7 回复:8 评论:7 创建时间:2020-07-08T22:15:09
C#初入门
C#学习记录
by 天上的流星
以前我经常用python开发程序,开发虽然有些曲折,但还算顺利
不过随着开发的深入,我越发相信,python运行程序较慢
在咨询了我一个朋友后,我得出:
”用python开发游戏纯属无聊“
所以,我决定学习新的语言
C#
读作Csharp
如同我们了解python一样,我们先从hello, world 入手
python版:
print("hello, world")
C#版:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CsharpTest1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("hello, world");
}
}
}
(这个代码行数怎么让我感觉很nice呢)
虽然代码众多,但是我们不难发现
其程序运行之处,在于:
static void Main(string[] args)
{
Console.WriteLine("hello, world");
}
(我不说那句老话了,C#中不管缩进了)
如此可见Console.WriteLine();相当于print,当然了,要记住在代码结尾加分号
接下来,一切C#的代码指主函数main内的代码,其他情况会另行说明
有输出,自然要有输入,即python的input
Console.ReadLine();
这时有人会问:
平时,我们经常会在input括号内加入字符串,表示“提问的内容”
如:
input("a number:")
能否改成:
Console.ReadLine("a number:");
这是不可以的
因为ReadLine方法没有参数,故不能加入字符串
如要达成如上input效果,可以:
Console.Write("a number:");
Console.ReadLine();
请注意,此处为Write而非WriteLine
前者不换行,而后者换行
你可以理解为:
Console.WriteLine("a number:");
类似于:
print("a number:")
而
Console.Write("a number:");
类似于:
print("a number:",end='')
当然了,是否要换行,你可以自行决定
通常,我们会在input前加上一个变量,将input的结果赋值给变量
如:
num = input("a number:")
则能否可以:
num1 = Console.ReadLine();
答案是否定的
首先我们要了解C#的变量机制
用python的方法初始化变量是不行的:
num1 = 0;
(num1:我是谁我在哪儿我在做什么)
C#的定义变量格式为:
变量类型 变量名
如初始化一个num1变量,可以为:
int num1;
如果num1变量是字符类型,可以为:
char num1;
如果num1是字符串类型,可以为:
string num1;
请注意,单个字符为char,多个字符为string
这只是初始化
变量赋值可以如下:
(此处用num1整数类型举例)
int num1;
num1 = 0;
或者
int num1 = 0;
both ok
C/C++同理
故我们可以:
Console.Write("a number:");
int num1 = Console.ReadLine();
不,我们不可以
ReadLine返回值是字符串类型,所以我们需要类似于pyth
on的int()的方法转换数据类型
转换至整形类型用:
Convert.ToInt32();
当然了,还有转换成其他类型的,如:
Convert.ToString();
Convert.ToChar();
Convert.ToByte();
就连转换成整型也有很多方法
Convert.ToInt16();
Convert.ToInt32();
Convert.ToInt喵();
在此,我建议用ToInt32,一般int为32位有符号整数
故我们可以:
Console.Write("a number:");
int num1 = Convert.ToInt32(Console.ReadLine());
不妨试着输出一下
Console.Write("a number:");
int num1 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(num1);
Write和WriteLine方法,各位应该已经有所了解了
至此,还差最后一步
以前python的时候,我们看到程序运行完直接退出
我们经常在结尾加上
exit = input()
同理,在C#中,可以用ReadLine实现按下回车键退出
Console.Write("a number:");
int num1 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(num1);
Console.ReadLine();
至此,一个基本的程序就算完成
最后我想说点什么
我会用C#,但显然不精通,在编程猫这里不免有点班门弄斧
但是发表帖子是对我的思想的传递,编辑帖子,也是对我知识的复习
我在学习C#中,由于没有python的代码打比方说明,学起来不免有些吃力
所以我打算用python来解释C#
如有不足,还请大家谅解指出,我必定改正
谢谢大家