<compiler language="c#" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"
compilerOptions="/d:DEBUG;TRACE /unsafe+" />
</compilers>
<compilers> 元素包含零个或多个 <compiler> 元素。每个 <compiler> 元素为一个特定语言提供程序指定编译器配置属性。
在 .NET Framework 2.0 版中,此元素已被否决,而改为使用 system.codeDom 节的 compilers 元素。但是,使用 compilation 元素的 compilers 子元素仍然有效,并且将重写位于 system.codedom 节中的 compilers 元素。
在本系统中由于图片的水印效果处理功能中使用了指针,请在web.config中加入下面项:
<system.web>
<compilation defaultLanguage="c#" debug="true">
<compilers>
<compiler language="c#" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" extension=".cs" compilerOptions="/unsafe" />
</compilers>
</compilation>
</system.web>
如何在c#中使用指针
1、修改工程配置
工程中默认的配置是不支持代码的非安全性的,如果我们想使用指针就要修改这个默认的设置。否则我们在编译的时候就会出现“不安全代码只会在使用/unsafe编译的情况下出现”。
<system.web>
<compilation defaultLanguage="c#" debug="true">
<compilers>
<compiler language="c#" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" extension=".cs" compilerOptions="/unsafe" />
</compilers>
</compilation>
</system.web>
2、定义非安全代码
在C#中如果想使用指针就需要将代码定义为unsafe。unsafe是C#中的一个关键字,我们可以将一个类、一个方法、代码块或者字段标记为unsafe。剩下的工作就和在其它语言中使用指针相同了。下面是一个使用指针的代码演示。
//将方法声明为非安全
public unsafe void Test()
{
int i=10;
int k;
//定义指针
int *j;
//给指针赋值
j=&i;
//取的指针的值
k=*j+1;
MessageBox.Show(k.ToString());
}