2016-03-30 5 views
0

私はこれらの用語を使用する課題があり、私の教授の講義ではそれらを明確に説明していませんでした。 私はCコーディングに新しく、これらの概念を理解することに問題があります。スイッチケースが別の場合を「通って落下する」場合最適化の有無にかかわらずコンパイルするCコードとは何ですか?

+0

詳細を知らせるのは難しいです。あなたの教授はかみ合っていますか?なぜ彼に尋ねないのですか? – Olaf

+0

私はすぐに答えを求めていましたが、チャンスが来たら私は彼に尋ねます。 –

+0

最適化を行わないと、コンパイラは多かれ少なかれあなたのコードを機械命令に変換します。最適化を使用してコンパイルすると、コンパイラは同じ出力(* "観測可能な動作" *)を生成する可能な限り速いコードを生成しようとします。 – MikeMB

答えて

2

Fallthoughである:

switch(someInt) { 
case 0: 
    // Do stuff 
case 1: 
    // Do more stuff 
    break; 
} 

この例でsomeIntが0である場合、それは出る、break文を打つ前に、コードの両方のコメントセクションを実行しますスイッチ。各スイッチセクションの後にbreakを入れることを忘れると、初心者の共通のエラーになります。

switch(someInt) { 
case 0: 
    // Do stuff 
    break; 
case 1: 
    // Do more stuff 
    break; 
} 

最適化は、単にできるようにスピードアップする方法をコンパイラ図をoptimization optionを使用することを意味してコンパイル:あなたはcase 0を作りたい場合にのみ、それは次のようになり、それがcase 1のコード独自のコードとはありません実行またはプログラムを単純化することができます。

関連する問題