C#编译器csc的用法

不使用IDE,直接利用编译器处理源码,然后生成相应的exe文件,点击执行。下面就来说一下C#的编译器csc的用法.

csc编译器的配置

使用记事本编写一个C#程序,保存后将扩展名改为cs,存储在D盘中。这个文件会成为本例中的一个样本。代码大意为向命令行中写下“i love u”。

using System;

namespace Wrox
{
	public class MyFirstClass
	{
		static void Main()
		{
			Console.WriteLine("i love u!");
			Console.ReadKey();

			return;
		}
	}
}

直接运行csc编译器会提示找不到命令,首先要进行环境变量的配置:

在.NET Framework的安装路径上,可以看到标识有本台机器上已经安装的.NET Framework各版本的文件夹,选择写有最新版本的文件夹进入。如本机中.NET Framework版本为“v4.0.30319”。具体的目录是:

C:\Windows\Microsoft.NET\Framework\v4.0.30319

把这个目录放到系统的path环境变量中。

此时就可以使用csc命令对cs文件进行编译了。在设置完环境变量后,cmd需要重启一次,才能执行csc命令。

把cmd切换到D盘中,就可以直接编译这个test.cs源码文件了。编译完成后就出现一个对应的test.exe可执行程序,点击就可以运行了。

csc的编译命令

1 ./refrence

   此选项可使得当前编译工程使用指定文件中的公共类型信息。这个选项对于初学者是很重要的。此选项的简写是/r。你必须引用在程序代码中使用"using"关键字导入的所有文件,如果在你的程序中,使用了自己编写的类库,在编译时也必须引用。

例子:编译文件,并引用在程序中使用的文件

csc /r:system.dll;myExec.exe;myLibrary.dll myProject.cs

(注:其中那个myExec.exe和myLibrary.dll时自己创建的)

2 ./target

   这个选项是告诉编译器你所想得到什么类型的输出文件。除非使用/target:module选项,其他选项创建的输出文件都包含着汇编名单。汇编名单存储着编译中所有文件的信息。在一个命令行中如果生成多个输出文件,但只创建一个汇编名单,并存储在第一个输出文件中。

   下面是/target的4种用法:

   /target:exe 创建一个可执行(EXE)的控制台应用程序

   /target:library 创建一个代码库(DLL)

   /target:winexe 创建一个windows程序(EXE)

   /target:module 创建一个模块(DLL)

   例子:

csc /target:exe myProj.cs // 创建一个EXE文件

csc /target:winexe myProject.cs file://创建一个windows程序

csc /target:library myProject.cs file://创建一个代码库

csc /target:module myProject.cs file://创建一个模块

3. /debug

   此选项是在调试时候使用的,当调试者启用了这个选项来调试自己的程序,将会创建一个.pdb文件,并把各种调试信息写到此文件里。有2中选项来指定调试的类型:

   /debug [+/-] :当选用/debug +就会把创建.pdb文件,并把调试信息存储到里面;/debug -是一个缺省设置,就是不产生任何调试信息。

   /debug:[full/pdbonly] :当使用/debug:full就是创建缺省的调试信息,有点类似/debug+选项。/debug: pdbonly选项是创建.pdb文件,并且你只能使用源代码调试在调试工具里。

   例子:编译Hello.cs并且为Hello.cs创建调试信息

csc /debug+ HelloWorld.cs

  

4. /define

   此选项在程序中定义了一个符号,他和在源程序中使用#define预处理程序指示功能相同,此符号保持已定义状态,直到源文件中的#undef指示符删除定义或者编译器已到达了文件末尾。你可以用/d简写来代替。

   例子:下面是my.cs的源程序

using System; 

public class myBuild
{
	public static void Main()
	{
		#if (final)
			Console.WriteLine("Final Build");
		#else
			Console.WriteLine("Trial Build");
		#endif 

		Console.ReadKey();
	}
}

   如果用csc /define:final my.cs来编译就会显示"Final Build",如果没有/define,编译后执行就会显示"Trial Build"。

  

时间: 2024-10-10 22:33:18

C#编译器csc的用法的相关文章

C# .net用法大全

从事多年的开发,对于.net可以说有一定的总结,有关于教科书般的文档,献于交流. 本文整理了当前企业web开发中的管理系统,商城等系统的常用开发技术栈. C#常见运算符 一元运算符(+.-.!.~.++.--) 算术运算符(*./.%.+ . – ) 移位运算符(<< .>> ) 关系和类型测试运算符(==.!=.<.>.<=.>=.is 和 as) 逻辑运算符(&.^ 和 | ) 条件逻辑运算符(&& 和 || ) 空合并运算符(?

C#编译器和CLI的安装

为了完成C#程序编译和运行,需要安装代码对应版本的编译器和CLI(公共语言框架)平台. (部分内容摘自<C#本质论>) 针对主流的CLI平台(Microsoft .NET),有两种安装方案: 1.最小安装:下载安装.NET Framwork2.0 或更高版本的发布包. 2.安装Visual Studio IDE 可获得功能丰富的IDE(包括智能感知.对项目文件的支持等). 为了使用命令行进行编译,无论是安装了Visual Studio 还是只安装了运行时,必须设置PATH环境变量来包含C#编译

sizeof用法总结

1. 定义: sizeof是何方神圣? sizeof乃C/C++中的一个操作符(operator)是也,简单的说其作用就是返回一个对象或者类型所占的内存字节数. MSDN上的解释为: The sizeof keyword gives the amount of storage, in bytes, associated with a variable or a type (including aggregate types). This keyword returns a value of ty

C#程序集系列12,C#编译器和CLR如何找寻程序集

本篇体验C#编译器和CLR运行时如何查找程序集,并自定义CLR运行时查找程序集的方式. □ C#编译器和CLR运行时如何查找程序集 C#编译器在哪里?--在C:\Windows\Microsoft.NET\Framework\v4.0.30319中 →删除F盘as文件夹中所有的exe和dll文件→把上一篇全局程序集缓存文件夹(C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Farm\v4.0_3.3.3.3__863de8402b3a9978)中的Farm.

cmd命令使用window自带的C#编译器编译C#源代码

1.编写好C#源文件(.cs). 2.找到window自带的C#编译器csc.exe,一般路径在C:\Windows\Microsoft.NET\Framework\v4.0.30319或者C:\Windows\Microsoft.NET\Framework64\v4.0.30319 3.以管理员的身份运行cmd,否则会出现拒绝访问资源的错误.接着运行如下命令即可编译完成. 4.也可以配置系统变量.使用快捷键win+break组合键打开系统属性页面,接着按如下图步骤执行即可.注意,如果path环

C#环境搭建,以及C#编译器的使用

搭建nuget包管理器 HomePage windows环境下,可以下载安装包:Download 使用最新版本的C#编译器 C# 5.0之后,微软将csc开源并独立运行,其项目命名为--roslyn Get the C# compiler before v5.0 C# 5.0 之前的版本,编译器csc集成在 .Net Framework 中,一般在以下目录中可以找到: C:\Windows\Microsoft.NET\Framework64\v[版本号]\csc.exe Run the comp

程序集与托管模块的概念(转)

程序集与托管模块的概念(转) 本文是为了学习程序集而整理的网上资料,主要包括两个部分,概念和使用,前部分讲怎样理解程序集,后部分讲述怎样使用的细节. 程序集与托管模块的概念 "程序集与托管代码块"(摘自Himage的blog),希望大家看了此篇文章后对程序集的概念清楚一点 如果你正在开发面向DotNet平台的应用程序,那么你肯定对“程序集”和“托管模块”这两个概念不陌生,这是DotNet带来的术语.这两个概念很容易混淆,有人认为它们指的是同一样事物,其实不然.这里,我写下自己的一些理解

Visual Studio 2008常见问题

1.asp.net在什么软件上运行?学习asp往往需要测试asp程序,电脑不能直接测试,需要装IIS才能运行,但装IIS要么需要安装盘,要么需要安装包,而且设置也很复搜索杂.这里给大学推荐两个替代IIS的工具.Nlife.rar和NetBox.rar测试方法把主程序放到需要测试的文件的目录中,双击程序就自动运行,这时就不用管它了.在浏览器中输入: http://localhost 或 http://127.0.0.1就会进入该目录中,点击文件就可测试.下载地址: Nlife.rar 下载地址 h

全新的开始——web前端

C#编程基础 编写第一个小程序: 步骤:新建一个文本文档,命名为MyFirstProgram.txt→找到C#编译器CSC.exe的路径→打开命令面板→cd,空格,粘贴路径回车键→csc空格/out:路径(程序最后要存放的位置)MyFirstProgram.exe空格→源代码路径(MyFirstProgram.txt的路径).MyFirstProgram.txt中存放的代码如下: using System;public class Program{    public static void M