using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace testbyte
{
class Program
{
static void Main(string[] args)
{
byte[] test1 = new byte[10];
byte[] test2 = new byte[10]; test1[0] = 0x30;
test2[0] = 0x22; byte result = test1[0] + test2[0];
}
}
}
竟然有这样错误,why???
========== Build: 0 succeeded or up-to-date, 1 failed, 0 skipped ==========
------ Build started: Project: testbyte, Configuration: Debug Any CPU ------
C:\WINDOWS\Microsoft.NET\Framework\v3.5\Csc.exe /noconfig /nowarn:1701,1702 /errorreport:prompt /warn:4 /define:DEBUG;TRACE /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5\System.Core.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5\System.Data.DataSetExtensions.dll" /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5\System.Xml.Linq.dll" /debug+ /debug:full /filealign:512 /optimize- /out:obj\Debug\testbyte.exe /target:exe Program.cs Properties\AssemblyInfo.cs
C:\Documents and Settings\z06189\My Documents\Visual Studio 2008\Projects\testbyte\testbyte\Program.cs(18,27): error CS0266: Cannot implicitly convert type 'int' to 'byte'. An explicit conversion exists (are you missing a cast?)Compile complete -- 1 errors, 0 warnings
========== Build: 0 succeeded or up-to-date, 1 failed, 0 skipped ==========
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace testbyte
{
class Program
{
static void Main(string[] args)
{
byte[] test1 = new byte[10];
byte[] test2 = new byte[10]; test1[0] = 0x30;
test2[0] = 0x22; byte result = test1[0] + test2[0];
}
}
}
竟然有这样错误,why???
========== Build: 0 succeeded or up-to-date, 1 failed, 0 skipped ==========
------ Build started: Project: testbyte, Configuration: Debug Any CPU ------
C:\WINDOWS\Microsoft.NET\Framework\v3.5\Csc.exe /noconfig /nowarn:1701,1702 /errorreport:prompt /warn:4 /define:DEBUG;TRACE /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5\System.Core.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5\System.Data.DataSetExtensions.dll" /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5\System.Xml.Linq.dll" /debug+ /debug:full /filealign:512 /optimize- /out:obj\Debug\testbyte.exe /target:exe Program.cs Properties\AssemblyInfo.cs
C:\Documents and Settings\z06189\My Documents\Visual Studio 2008\Projects\testbyte\testbyte\Program.cs(18,27): error CS0266: Cannot implicitly convert type 'int' to 'byte'. An explicit conversion exists (are you missing a cast?)Compile complete -- 1 errors, 0 warnings
========== Build: 0 succeeded or up-to-date, 1 failed, 0 skipped ==========
所有byte+byte的结果是int
是byte和byte的和,的默认结果是int型的。