すべてのカテゴリ » 知識・教養・学問 » 知識・学問 » 社会・労働

質問

終了

セマンティクスとはなんですか?教えて頂けないでしょうか??

  • 質問者:ごろう
  • 質問日時:2009-01-07 23:53:40
  • 0

並び替え:

シンタックスエラーは、
コンパイラが、そのプログラミング言語の文法(Syntax)に違反しているか否かを機械的に判断することで選別することができますが、
プログラムの中には、シンタックスがあっていても、
きちんと動作しないプログラムがいくつかあって、
そのなかでも、セマンティクス的なまちがいというのが、
ありがちなのです。

で、どういうまちがいがセマンティクス的な間違いかというと、
 flagという変数を用意して、
 flagが1の間は処理を繰り返し続けるようにしよう
 最初だから、flagの値を1にしてっと。
 ....
  で、あの値がこうなったら、処理から抜けたいから
  flagの値を、1にすればいいんだ!(をいをい、そこは0にするってきめただろうに)

というような間違い方をするのが、セマンティクス的な間違いであると。
実際には、こんなわかりやすいものはなかなかなくて、
call by referenceな呼び出し方をしているのに、
値を代入して戻してしまったりして、
いきなりデバッガに落ちるとか、
文字列自身を渡してほしいのに、文字列へのポインタを返してしまって以下同文とか、
変数の型の不一致みたいに、
コンパイラが教えてくれないまちがいなので、
なかなかに、わかるまでは、見つけにくい物なのです。
(あれ?最近のコンパイラは、これくらいのことなら教えてくれるのかしら?
むしろ、最初の例のような間違い方の方が、今どきは見つけにくいのかもしれない)
セマンティクスそれ自身の説明ではないですが、
なぜ、プログラミングの世界でセマンティクスという言葉が出てくるのか、
それはわかってもらえたと思います。

  • 回答者:くろうはたえぬ (質問から2時間後)
  • 1
この回答の満足度
  
参考になりました。回答ありがとうございました。

せまんてぃくす 【セマンティクス】 semantics

プログラミング言語において、ソースコード中で利用されている変数や文が正しく動作するかを判断する基準のこと。たとえば、ヌルが定数として定義されている値がアドレス参照のために使われていると、セマンティクスに違反しているとみなして、エラーと判断する。

  • 回答者:匿名希望 (質問から25分後)
  • 0
この回答の満足度
  
参考になりました。回答ありがとうございました。

セマンティクス(semantics)
プログラミング言語において、ソースコード中で利用されている変数や文が正しく動作するかを判断する基準のこと。

  • 回答者:むつかしい (質問から8分後)
  • 0
この回答の満足度
  
参考になりました。回答ありがとうございました。

参考にしてください。
http://www.kab-studio.biz/Programing/JavaA2Z/Word/00000315.html

  • 回答者:私、匿名なんです。 (質問から7分後)
  • 0
この回答の満足度
  
参考になりました。回答ありがとうございました。

http://yougo.ascii.jp/caltar/%E3%82%BB%E3%83%9E%E3%83%B3%E3%83%86%E3%82%A3%E3%82%AF%E3%82%B9

ここに詳しく載っています。

  • 回答者:匿名希望 (質問から6分後)
  • 0
この回答の満足度
  
参考になりました。回答ありがとうございました。

関連する質問・相談

Sooda!からのお知らせ

一覧を見る