今、人のコードを読んでいますが、、、 – プログラミング – Home

今、人のコードを読んでいますが、、、
 
通知
すべてクリア

[解決済] 今、人のコードを読んでいますが、、、


Tj
 Tj
(@Tj)
ゲスト
結合: 23年前
投稿: 14
Topic starter  

コマンドをキーワード検索しても、
ちょっと意味しているところがわからないのでどなたかお教え下さい。

1) YT[i][j] = (x<M) ? LZ : log(x);
2) y = (shared)?0.0:n[k]-o[k];
3) if (JP&US) mn[k] = x;
4) w = (q *)st->hk;
5) shared = GU(hs.m->v.var) > 1;
また
上記4)のstとか5)のmという構造体を何処かで定義しているところが
ないか調べてみたのですが、この.Cの中にも無ければ
このコードが使っているあらゆるヘッダーの中にも無かったのですが、
とすると、どんなところに入れられている可能性があるのでしょうか?


引用未解決
トピックタグ
・
 ・
(@・)
ゲスト
結合: 23年前
投稿: 1
 

・条件演算子: ? :
・ビットごとの AND 演算子: &


返信引用
tib
 tib
(@tib)
ゲスト
結合: 23年前
投稿: 468
 

例えば1は、
  if( x<M )
  {
    YT[i][j] = LZ;
  }
  else
  {
    YT[i][j] = log(x);
  }
と同じ意味です。同様に2は、
  if( shared )
  {
    y = 0.0;
  }
  else
  {
    y = n[k]-o[k];
  }
と同じ意味ですね。3は、
  if( JP&US )
  {
    mn[k] = x;
  }
なんですが、「ビット毎のAND演算」が何を意味しているか解りますか? その演算結果が0
でなければmn[k]にxを代入する、ということです。

4・5については、まずコンパイルを通してみてください。コンパイルが通るなら必ずど
こかにその変数を宣言しているところ、その型を定義しているところがあるはずです。
ヘッダーファイルが別のヘッダーファイルをインクルードしているということはありませ
んか? CかC++かが書かれていませんが、C++なら「親クラスで定義されている」という可
能性もありますので頑張って探し出してください。


返信引用
アイススケーター
 アイススケーター
(@アイススケーター)
ゲスト
結合: 23年前
投稿: 280
 

1)-3)この手の内容は、VCを持たれているのならHELPで調べたほうが
よろしいと思います。

↓に「C ランケージリファレンス」の場所をお知らせします。

MSDNライブラリ
Visual C++ドキュメント
リファレンス
C/C++ 言語および C++ライブラリ
C ランケージリファレンス

最低でもこの辺は見ておいて下さい。

4)5)はプログラムの中で構造体の宣言をしていませんか
tibさんの言うとおりコンパイルが通れば、GREP機能で検索して下さい。


返信引用
ん
 ん
(@ん)
ゲスト
結合: 23年前
投稿: 81
 

1,2は「三項演算子」を調べてみるとよいでしょう。

3は「論理演算子」を調べてみるとよいでしょう。

4,5で構造体の宣言場所がわからなければ struct で全ファイル検索すれば
何かわかるでしょう。


返信引用
Tj
 Tj
(@Tj)
ゲスト
結合: 23年前
投稿: 14
Topic starter  

みなさん。
ありがとうございます。
じょじょにわかってきました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました