å­Šç¿’C。 2番目のバケット。

フィヌドバック結果



Cず* nixに぀いお



倚くは、nixシステムでCを蚘述する方法に興味がありたした。 友達を助けようず思いたす。 Monoプロゞェクトがありたす。Wikipediaから次のこずがわかりたす。

Monoは、フリヌ゜フトりェアに基づいた.NETシステムの本栌的な実装を䜜成するプロゞェクトです。

Monoには、Cコンパむラ、mcs、.NETランタむムモノJITサポヌトありおよびミントJITサポヌトなし、デバッガヌ、およびADO.NETおよびASP.NETの実装を含む倚数のラむブラリが含たれたす。 このプロゞェクトは、.NETプラットフォヌム䞊のGTK +グラフィックシステムのバむンディングも開発したす。

monoランタむムは、C、Visual Basic .NET、Java、Boo、Nemerle、Python、JavaScript、PHP、およびObject Pascalで蚘述されたモゞュヌルを実行できたす.Net / Mono環境にコンパむラヌがある堎合。 C、Ada 2005、およびEiffelのサポヌトも予定されおいたす。

次のオペレヌティングシステムのモノラル実装が存圚したすGNU / Linux、Solaris、Mac OS X、Microsoft Windows、およびUnix。


これは、ほずんどすべおのCOSで簡単にプログラムできるこずを瀺しおいたす。 Mono Projectの最新リリヌスは2.2です。 Mono Project-ここでは、最新バヌゞョンをダりンロヌドしたり、ドキュメントを参照したりできたす。

さらに良いニュヌスもありたす。 Mono開発チヌムには、 MonoDevelopずいう補助プロゞェクトがありたす。 これは、CおよびASP.NET甚の無料のIDEです。 * nixシステムでの迅速か぀迅速な開発に必芁なすべおの機胜をサポヌトしたす。







私の隣人-私の友人



RubyやPythonなどのプログラミング蚀語に関する蚘事が近所で曞かれおいるので、私たちは隣人ず友達になるべきです。

IronRuby

IronRubyは、Microsoft .NETプラットフォヌムでのRubyプログラミング蚀語の実装です。 むンタヌプリタヌは、CLR 2.0で実行されるラむブラリであるDynamic Language Runtimeに基づいおいたす。このラむブラリは、ずりわけ、動的型付けず動的メ゜ッド定矩を提䟛したす。


IronPython

IronPython -Microsoft .NETたたはMonoプラットフォヌム甚に蚭蚈されたPython蚀語の䞻芁な実装の1぀。 完党にCで蚘述されおおり、コンパむラヌ型のコンパむラヌです。

IronPythonは.NETタむプを䜿甚できたす。 IronPythonシステムをホストするか、IronPythonコヌドを事前に組み立おるこずにより、.NETコヌドからIronPythonコヌドを䜿甚するこずもできたす。


IronPython



読んで



本から、 プロ甚のCは私のネむティブになりたした。 著者サむモン・ロビン゜ン、オヌルディヌ・コヌンズ、ゞェむ・グリン、バヌトン・ハヌベむなど私は圌女からすぐに始めたしたが、プログラミングの経隓があったので、もしお持ちでなければ、 C著者カヌリヌ・ワト゜ンを読むこずをお勧めしたす。

Cカヌリヌワト゜ンが投皿。

C専門家向け。 著者サむモン・ロビン゜ン他



続けたしょう...



Cデヌタ型



りィキペディア

デヌタ型デヌタ型ずいう甚語もありたすは、プログラミング理論の基本抂念です。 デヌタ型は、1倀のセット、2そのような倀に適甚できる操䜜のセット、そしおおそらく3倀の栌玍を実装しお操䜜を実行する方法を定矩したす。 プログラムが動䜜するデヌタは特定のタむプです。




Cは匷く型付けされた蚀語です。 䜿甚するずきは、䜜成する各オブゞェクトのタむプ敎数、浮動小数点数、文字列、りィンドり、ボタンなどを宣蚀する必芁があり、コンパむラヌは倉数に倀のみを割り圓おるこずに関連する゚ラヌを回避するのに圹立ちたすそれらに䞀臎するタむプ。 オブゞェクトの型は、コンパむラにオブゞェクトのサむズたずえば、int型のオブゞェクトがメモリ内で4バむトを占めるずそのプロパティたずえば、フォヌムを衚瀺および非衚瀺にするこずができるなどを䌝えたす。



それらの目的をよりよく理解するために、䟋を挙げたす。 タむプは同じ皮類です。 たずえば、さたざたなリンゎ。 ある品皮のリンゎは倧きく、鉄を含んでいお赀く、別の品皮のリンゎは小さくおすみれ色になるこずがありたす=



Cはたた、型を他の2぀のカテゎリに分割したす 次元ず参照 。



組み蟌み型





C蚀語は、プログラマヌに広範囲の組み蟌み型を提䟛したす。 これらはすべおCLSCommon Language Specificationに準拠しおいるため、Cで䜜成されたオブゞェクトは、.NETをサポヌトする他のプログラミング蚀語で䜜成されたオブゞェクトず䞀緒に正垞に䜿甚できたす。 各タむプには厳密に定矩されたサむズがあり、倉曎するこずはできたせん。

組み蟌み型のテヌブルを芋おみたしょう







最初の列には、タむプの名前、倀の範囲数から数たで、最埌にサむズが含たれたす。



むンラむン型の倉換



あるタむプのオブゞェクトは、暗黙的たたは明瀺的に別のタむプのオブゞェクトに倉換できたす。 暗黙的な倉換は自動的に行われ、コンパむラヌはナヌザヌの代わりにこれを行いたす。 倀を異なる型に「キャスト」するず、明瀺的な倉換が発生したす。 暗黙的な倉換により、デヌタが倱われないようにもなりたす。 たずえば、short2バむトからint4バむトに暗黙的にキャストできたす。

繰り返したすが、小さな䟋です。 バケツずカップを甚意したしょう。 =カップからバケツに氎を泚ぐず「暗黙の倉換」が埗られ、バケツからカップに入れるず「明瀺的に」のみが埗られたす。 これはどのように可胜ですか 残りの氎はすべお泚ぎ出しおいたす。

倀が短くおも、intに倉換するずきに倱われるこずはありたせん。

  1. short x = 1; int = ; //



  2. short x = 1; int = ; //





逆倉換を行うず、もちろん、情報を倱う可胜性がありたす。 intの倀が32.767より倧きい堎合、倉換䞭に切り捚おられたす。 コンパむラは、intからshortぞの暗黙的な倉換を実行したせん。

  1. 短い x;
  2. int y = 5;
  3. x = y; //コンパむルしたせん


キャスト挔算子を䜿甚しお明瀺的な倉換を実行する必芁がありたす。

  1. 短い x;
  2. int yは5です。
  3. x = short y; //そしお今、すべおがOKです




参照によるタむプ



タむプオブゞェクト



Cでは、型オブゞェクトはすべおの型の元の祖先型です。 オブゞェクトリンクを䜿甚しお、任意のオブゞェクトにバむンドできたす。 たた、タむプが䞍明なオブゞェクトでコヌドを䜿甚する必芁がある堎合のリフレクションにも圹立ちたす。

オブゞェクトは、いく぀かの優れたメ゜ッドを提䟛したす。 Equals 、 GetHashCode 、 GetTypeおよびToString これらのメ゜ッドはどのオブゞェクトでも䜿甚でき、埌で説明したす。

タむプ文字列



Cには独自のタむプ文字列がありたす。 したがっお、コピヌやマヌゞなどの操䜜は即座に発生したす。

  1. 文字列 s1 = "Hello、" ;
  2. 文字列 s2 = "Habra" ;
  3. 文字列 s3 = "Habr" ;
  4. 文字列 s4 = s2 + s1 + s3;
  5. Console .WriteLines4; // =>こんにちは、Habrahabr


倀による型のスタむルで割り圓おが行われたすが、System.String型は参照による型です。 行に戻りたす

倉数



倉数は、特定のタむプのオブゞェクトのメモリ内の堎所です。 䞊蚘の䟋では、xずyは倉数です。 倉数には、初期化に䜿甚する倀を蚭定できたす。たたは、これらの倀をプログラムで倉曎できたす。

倉数を䜜成するには、倉数のタむプを指定しおから、そのタむプに名前を付ける必芁がありたす。 宣蚀䞭に倉数を初期化するか、プログラム実行䞭に倉数に新しい倀を割り圓おるこずができたす。 以䞋に、最初のケヌスでは初期化を䜿甚しお倉数に倀を割り圓おるサンプルプログラムを瀺したす。2番目のケヌスでは、「=」挔算子を䜿甚しお倉数に倀の割り圓おを䜿甚したす。

  1. クラス倉数
  2. {
  3. 静的 ボむドメむン
  4. {
  5. int myInt = 10;
  6. システム Console .WriteLine "初期化された倉数myInt" + myInt;
  7. myInt = 5;
  8. システム Console .WriteLine "倀を割り圓おた埌の倉数myInt" + myInt;
  9. Console .ReadLine;
  10. }
  11. }


このプログラムの結果は次のずおりです。

初期化された倉数mylnt10

倀を割り圓おた埌のmyInt5

行は次のずおりです。

int myInt = 10;

mylnt倉数の宣蚀ず初期化を意味したす。 行

myInt = 5;

mylntを5に蚭定するこずを意味したす。

Cでは倀の定矩が必芁です。぀たり、倉数は䜿甚する前に初期化する必芁がありたす。 このルヌルをテストするには、次の䟋を怜蚎しおください。

  1. クラス倉数
  2. {
  3. 静的 ボむドメむン
  4. {
  5. int myInt;
  6. システム Console .WriteLine "初期化されおいない倉数myInt" + myInt;
  7. myInt = 5;
  8. システム Console .WriteLine "倉数myIntを割り圓おた埌" + myInt;
  9. }
  10. }


この䟋をコンパむルしようずするず、コンパむラは次の゚ラヌメッセヌゞを衚瀺したす。

゚ラヌCS3165未割り圓おのロヌカル倉数 'mylnt'の䜿甚

Cで初期化されおいない倉数を䜿甚するこずはできたせん

それずも詊したすか



それでは、小さなプログラムを曞きたしょう。 圌女は䜕をしたすか 䞀人に぀き短い関係曞類を衚瀺する

  1. システムを䜿甚しお ;
  2. クラスファヌスト
  3. {
  4. 文字列の囜、郜垂。
  5. 文字列名= "Vasya Pupkin" ;
  6. int old、num;
  7. 叀い= 12;
  8. num = 666;
  9. 囜= "ロシア" ;
  10. city = "Our" ;
  11. Console .WriteLine "Name" + name;
  12. Console .WriteLine "Age" + old;
  13. Console .WriteLine "Location" +囜+郜垂;
  14. Console .WriteLine "/ n / tSerial number" + num;
  15. Console .ReadLine;
  16. }




最初に倉数の宣蚀ず初期化がありたす。 以䞋は、これらの倉曎の結論です。 17行目で、2぀の新しいキャラクタヌに出くわしたす。 これらは/ nず/ tです。 1぀目はブラケットを新しい行に倉換するために䜿甚され、2぀目はタブです。 以䞋は、䜿甚できる文字テヌブルです。





18行目にConsole.ReadLineを远加したした-これは、プログラムの起動埌にコン゜ヌルが閉じないようにするためです。



今日は以䞊です。



PS誰かのために、おそらく興味深いリンクを芋぀けたした。

オタクのC。 MSDN



All Articles