第一部分 记事本搞定第一个C#程序和编译过程剖析
记事本搞定第一个C#程序
进行下面三个步骤:编码,编译和托管运行。
1.记事本进行编码:
using System;
class Program
{
public static void Main()
{
Console.WriteLine("Hello world!");
Console.ReadLine();
}
}
2.进行编译(在C盘的Window下,找到Microsoft.NET,表示已安装.Framework框架)。
打开命令提示符窗口,输入cmd,找到C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe,进入目录cd C:\Windows\Microsoft.NET\Framework\v4.0.30319,执行csc.exe /out:D:\hello.exe d:\hello.cs
3.托管运行
编译之后,生成hello.exe,直接点击进行托管运行。
编译过程剖析:
编码--->c#语言编译器---->MSIL微软中间语言以程序集.exe,.dll存在--->CLR,JIL即时编译器---->机器码---->CLR托管运行
|------------------------------编译时----------------------------------|---------------------运行时-------------------------------|
第一部分 记事本搞定第一个C#程序和编译过程剖析的更多相关文章
- 关于一个程序的编译过程 zkjg面试
http://blog.csdn.net/gengyichao/article/details/6544266 一 以下是C程序一般的编译过程: 从图中看到: 将编写的一个c程序(源代码 )转换成可以 ...
- 一个Java程序的执行过程(转)
我们手工执行java程序是这样的: 1.在记事本中或者是UE的文本编辑器中,写好源程序: 2.使用javac命令把源程序编译成.class文件: 编译后的.class(类字节码)文件中会包含 ...
- 通过搭建一个精简的C语言开发环境了解一个C程序的执行过程
一.如何搭建一个精简的C语言开发环境 准备:下载TC2.0,并解压,比如说“d:\tc2.0\tc”目录 1.在C盘建立一个目录minic c:\ md minic 2.从解压的目录中将以下文件拷贝到 ...
- 第一个java程序的编译
import java.io.*; public class EmployeeTest{ public static void main(String args[]){ /* 使用构造器创建两个对象 ...
- 哟西,CLOUDSTACK第一步,搞定
安装了N十次,找个RESET SERVER的脚本.
- [shiro学习笔记]第一节 使用eclipse/myeclipse搭建一个shiro程序
本文地址:http://blog.csdn.net/sushengmiyan/article/details/39519509 shiro官网:http://shiro.apache.org/ shi ...
- 第一个struts程序的配置过程
然后输入project-name,比如说“test",点finish,配置web.xml,这里的org.apache.struts.action.ActionServlet就在struts- ...
- 一个C#程序的执行过程
可能很多人都知道我们把程序打包成dll就丢出去了,但是里面的具体的执行过程是怎么样的呢. 程序集是由元数据和IL组成的.IL是和CPU无关的语言,是微软的几个专家请教了外面的编译器的作则,开发出来的. ...
- linux下的第一个C程序及其编译方法
#include <stdio.h> #include <stdlib.h> int main(int argc, char ** argv) { printf(& ...
随机推荐
- PS2鼠标+LCD12864实验(调试未成功)
此试验我一人调试许久都未成功,但发送ff时,读出来的数据确是对的,一开始让我窃喜,但发送f4时,读出来的数据确是错的,哎让苦恼啊,能力有限,只能先暂时就这样吧,那位什么还要贴出来呢,有两个原因: 1. ...
- Linux批量部署工具Expect
既然没有遇到过,做好准备总是好的.这是自己送给自己的话,现在运维做自动话越来越多,自己就学以下,记录笔记.目前主流的有puppet.Expect.pssh等等,今天就用Expect做自动部署和日常管理 ...
- python之路:进阶 二
c = collections.Counter( Counter({ b = collections.Counter( b.update(c) Counter({ Counter({ ...
- JAVA基础-多态
多态 polymophism: 动态绑定, 迟绑定, 指在执行期间(java), 而不是编译期间(javac), 判断所引用对象的实际类型, 根据实际类型调用响应的方法. 3个条件: 1. 继承 2. ...
- 微信小程序实例教程(四)
第八章:微信小程序分组开发与左滑功能实现 先来看看今天的整体思路: 进入分组管理页面 --> 点击新建分组新建 进入到未分组页面基本操作 进入到已建分组里面底部菜单栏操作 --> 从名 ...
- JAV基础语法之---数据类型转换
数制转换": 1.string 转 byte[] String str = "Hello";byte[] srtbyte = str.getBytes(); 2.byte ...
- Blog开始
好久没更新Blog了,去看了下之前的csdn的blog感觉特别的乱,为此决心重开blog,记录工作及学习中的一些事 2013-10-28 ymc ...
- html5新增标签集锦
<keygen></keygen><meter low="69" high="80" max="100" op ...
- UNITY3D中的文件存储管理
使用Path对象判断路径的完整性和正确性 using System; using System.IO; class Test { public static void Main() { string ...
- xCode中如何安装旧的模拟器
http://blog.csdn.net/cmengzhongren/article/details/50414493 这里给出如何把老版本的SDK加入到新的Xcode中的方法.其实很简单,就是将老版 ...