01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
2007-12-15 Sat
■ string型をbyte配列に入れるには [C#]
static void Main()
{
string message = "hello world";
byte[] buffer = Array.ConvertAll(message.ToCharArray(),new Converter<char,byte>(CharToByte));
}
static CharToByte(char c)
{
return Convert.ToByte(c);
}
これでできた。
ConvertAll の第2引数を匿名メソッドにできそうな気がする。
new Converter<char, byte>(delegate (char c){return Convert.ToByte(c);})
こうか。
もっと簡単な方法があるだろうか?。
■ C# 言語仕様 [C#]
1.2 仕様では、Visual C# 2005 より前に言語に追加された機能について説明し、2.0 仕様では、Visual C# 2005 に追加された機能について説明しています。
C# 言語仕様は、Microsoft Word 形式で次の場所から入手できます。
MSDN オンラインの Visual C# Developer Center
Visual Studio (Microsoft Visual Studio 2005 インストール ディレクトリの VC#\Specifications\1033\ ディレクトリ)
C# のコンパイル方法
アプリケーション
csc application.cs
ライブラリ
csc /t:liblary liblary.cs
ライブラリを使用したアプリケーション
csc /r:liblary.dll application.cs
規約により、静的メソッド Main は、プログラムのエントリ ポイントとして機能します。
C# でのエントリポイントは、main 関数でない。
静的な Main メソッドがエントリポイントになる。
static void Main(){...}
static void Main(string[] args){...}
static int Main(){...}
static int Main(string[] args){,,,}
型
値型
- 単純型
- 列挙方
- 構造体
参照型
- クラス型
- インターフェース型
- 配列型
- デリゲート型
ボックス化
値型は object型に、入れられる。
戻すときはキャストする。
メソッド
C# では、すべてのメソッドは、クラスまたは構造体のメンバとして定義されている必要があります。