Why do I get the error "Unsafe code may only appear if compiling with /unsafe"?
Why do I get the following erro开发者_如何转开发r?
Unsafe code may only appear if compiling with /unsafe"?
I work in C# and Visual Studio 2008 for programming on Windows CE.
To use unsafe code blocks, the project has to be compiled with the /unsafe switch on.
Open the properties for the project, go to the Build
tab and check the Allow unsafe code
checkbox.
Here is a screenshot:
ََََََََ
Probably because you're using unsafe code.
Are you doing something with pointers or unmanaged assemblies somewhere?
Search your code for unsafe
blocks or statements. These are only valid is compiled with /unsafe
.
To use unsafe code blocks, open the properties for the project, go to the Build tab and check the Allow unsafe code checkbox, then compile and run.
class myclass
{
public static void Main(string[] args)
{
unsafe
{
int iData = 10;
int* pData = &iData;
Console.WriteLine("Data is " + iData);
Console.WriteLine("Address is " + (int)pData);
}
}
}
Output:
Data is 10
Address is 1831848
For everybody who uses Rider you have to select your project>Right Click>Properties>Configurations Then select Debug and Release and check "Allow unsafe code" for both.
Can also add AllowUnsafeBlocks
tag to PropertyGroup
directly in .csproj file
<PropertyGroup>
<TargetFrameworks>netcoreapp3.1; net472</TargetFrameworks>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
</PropertyGroup>
精彩评论