その先にあるもの…

unsafe 본문

프로그래밍/C#

unsafe

specialJ 2014. 3. 28. 15:26
class MainClass

 public static void Main (string[] args) 

 {

 int nValue = 5; 

 int *pInt; pInt = &nValue; 


 Console.WriteLine ("Hello World!"); 

 Console.WriteLine ( *pInt )

 }

 }


 간단한 테스트 코드다. 

 포인터를 사용할려면 오류가 나온다.


Error CS0214: Pointers and fixed size buffers may only be used in an unsafe context (CS0214)


unsfae는 포인터를 사용하기 위해서는 사용되는 키워드인데
블럭으로 지정해서 사용 가능하다.

class MainClass
{
public static void Main (string[] args)
{
unsafe
{
int nValue = 5;
int *pInt;
pInt = &nValue;
Console.WriteLine ("Hello World!");
Console.WriteLine ( *pInt );
}
}
}

unsafe를 적용하였지만 여전히 오류가 발생한다.


Error CS0227: Unsafe code requires the `unsafe' command line option to be specified (CS0227)


프로젝트에 빌드 옵션에서 unsafe를 체크하면 실행이 된다.


mono develop

project name -> right click -> options -> Build(General) -> Allow 'unsafe' code check



'프로그래밍 > C#' 카테고리의 다른 글

WeakReference  (0) 2014.06.03
CreateInstance, InvokeMember  (0) 2014.04.21
C#> struct -> string  (0) 2013.10.31
C# delegate  (0) 2013.09.10
C# const / readonly  (0) 2013.09.02
Comments