ency の回答履歴

全386件中301~320件表示
  • 他人が読みやすいコーディングのコツ

    趣味でプログラミングをしているのですが、 現場で働いている人が見ても理解されるコードを 目指して学習をしています。 今、C/C++用のスタイルブックを買って読んでいます。 それと、デザインパターンの本を読んで、少しずつですが学習しています。 理解しやすいコードを書く練習として、他に「これはやっておけ」 というのがあれば教えてください。 よろしくお願いします。

    • ベストアンサー
    • noname#10829
    • C・C++・C#
    • 回答数11
  • 他人が読みやすいコーディングのコツ

    趣味でプログラミングをしているのですが、 現場で働いている人が見ても理解されるコードを 目指して学習をしています。 今、C/C++用のスタイルブックを買って読んでいます。 それと、デザインパターンの本を読んで、少しずつですが学習しています。 理解しやすいコードを書く練習として、他に「これはやっておけ」 というのがあれば教えてください。 よろしくお願いします。

    • ベストアンサー
    • noname#10829
    • C・C++・C#
    • 回答数11
  • 関数とメソッドの違い

    初歩的な質問なのですが、 関数とメソッドの違いが分からず悩んでいます。 書籍や人によって、 関数とメソッドは同じ物として書いている物もあれば、 メソッドはクラスに関連付いた関数としていたり、 クラスでもpublic関数だけとか、 引数のある物がメソッド、 逆に無い物がメソッド等々…で、 どれが正しいのか良く分からないのです。 関数とメソッドの違いを教えていただけますよう、 お願いいたします。

  • 【VC++.NET】ポインタとは??

    VC++.NETを、入門書で勉強しています ぐぐったりしてみたのですが、ポインタというのが、いまいちわかりません。 【質問】ポインタとは、何なのですか?また、どういう時に利用するのですか?利用の仕方も教えていただければ幸いです

  • 大きな配列データを複数ある場合のデータ保持の方法

    indowsXP VC++.net2003で開発をしています。 100*100程度の2次元配列が20から50程度ある場合、データはどう保持しているのが良いのでしょうか? 同時に使うのは1個のみですので、すべて宣言するのはメモリの無駄だと思っています。 思いついた方法は 1.テキストファイルに保持しておく 2.データベースに保持しておく の2つですが、ユーザーに配列の中身が見られたり変更されたりするのも困るので1の方法は却下しました。 2の方法ですがデータベースを用意するのは無理なのであきらめました。 また、配列データはツールから作成しており、以下のように宣言しやすいように表示されます。 値をひとつひとつ代入して初期化するのも大変なので、できればこの表示をいかしたまま、 必要な配列を取り出して扱うということをしたいのですが、何か良い方法はないでしょうか? それともint型の100*100の2次元配列 50個程度なら宣言したほうがいいのでしょうか? int test[32][32] = { {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 以下省略

  • 円の面積について

    円の面積を求める時に円周率を使いますよね。 そして円周率は無限に続きますよね。 って事は、円の正確な面積って求められないんですか? それとも、円周率が無限に続く以上、正確な真円などと言うものは存在しないのでしょうか?

  • C言語で2次元配列の引数定義やコピーの仕方など

    2次元配列の引数の定義や渡し方や ある変換する関数で、すべて' '(スペース)にしたり[memmoveなど1命令で]や、 それぞれ一つ違う値 A->B, O->Pに置き変える関数しようとしているのですが、 C言語のデータ操作に非常に疎く、どのようにすれば良いかわかりません。 どのようにすれば良いのでしょうか? 環境はWindowsで VisualC++6.0です。 GCCもソースを変えずに同じように出来るのでしょうか? #include <stdio.h> char lesson[7][6] = { {'A', 'B', 'C', 'D', 'E', 'F'}, // MON {'G', 'H', 'I', 'J', 'K', 'L'}, // TUE {'M', 'N', 'O', 'P', 'Q', 'R'}, // WED {'S', 'T', 'U', 'V', 'W', 'X'}, // THU {'Y', 'Z', 'a', 'b', 'c', 'd'}, // FRI {'e', 'f', 'g', 'h', 'i', 'j'}, // SAT {'k', 'l', 'm', 'n', 'o', 'p'}, // SUN }; // --- 多次元配列の引数の渡し方がわからないのでvoid --- void print_data(void) { for(int i=0; i < 7; i++){ for(int j=0; j < 6; j++){ printf("%c ", lesson[i][j]); } printf("\n"); } } // --- 問題の変換関数(引数定義と内容 --- int convert(????) { ???? } // --- メイン --- int main(boid){ print_data(); conver(???); // <--- どのように引数に渡すのか? print_data(); return 0; }

  • 円の面積について

    円の面積を求める時に円周率を使いますよね。 そして円周率は無限に続きますよね。 って事は、円の正確な面積って求められないんですか? それとも、円周率が無限に続く以上、正確な真円などと言うものは存在しないのでしょうか?

  • 円の面積について

    円の面積を求める時に円周率を使いますよね。 そして円周率は無限に続きますよね。 って事は、円の正確な面積って求められないんですか? それとも、円周率が無限に続く以上、正確な真円などと言うものは存在しないのでしょうか?

  • SEの仕事について

    はじめまして。カテゴリーが違うかもしれませんが、SEの仕事について教えていただきたく質問しました。 現在24歳で大学を2年前に中退し、アルバイトをずっと続けていました。今回、ある知り合いの紹介でSEで就職することに決まりました。しかしネットでいろいろと調べていくうちにSE(はじめはPGですが)という仕事は非常に労働時間が長く、休日出勤も珍しくないということがわかりました。それに対して彼女が反対しています。一緒にいる時間がなかなか取れなくなる、というのが理由とのことです。そこでみなさんにお聞きしたいのは 実際に彼女、奥様がおられる方で一緒に過ごす時間はどのくらい取ることができていますか? 月の残業時間はどのくらいですか? よろしくお願いします。長文失礼いたしました。

  • C言語でのプログラム

    全対最短経路(フロイドのアルゴリズム)のプログラムを作成したんですが、以下のようなメッセージが出てしまい、どこが悪いのかさっぱりわかりません。どなたかご教授願えないでしょうか? <プログラム> #include<stdio.h> #define NC 999 /* It should be large enough. */ #define N 5 void floyd(int, int [][], int [][], int [][]); int W[N][N] = { { 0, 1, NC, 1, 5 }, { 9, 0, 3, 2, NC }, { NC, NC, 0, 4, NC }, { NC, NC, 2, 0, 3 }, { 3, NC, NC, NC, 0 }, }; int P[N][N]; int D[N][N]; main() { floyd(N, W, D, P); } void floyd(int n, int W[][], int D[][], int P[][]) { int i, j, k; for(i=0;i<n;i++){ for(j=0;j<n;j++){ P[i][j] = 0; } } for(i=0;i<n;i++){ for(j=0;j<n;j++){ D[i][j] = W[i][j]; } } for(k=0;k<n;k++){ for(i=0;i<n;j++){ for(j=0;j<n;j++){ if(D[i][k]+D[k][j]<D[i][j]){ P[i][j] = k; D[i][j] = D[i][k] + D[k][j]; } } } } printf("?nall pairs of the shortest pathes:?n"); for(i=0;i<n;i++){ for(j=0;j<n;j++){ printf("%3d ", D[i][j]); } printf("?n"); } printf("?n"); } <エラーメッセージ> In function `floyd': :30: error: invalid use of array with unspecified bounds :36: error: invalid use of array with unspecified bounds :43: error: invalid use of array with unspecified bounds :44: error: invalid use of array with unspecified bounds :45: error: invalid use of array with unspecified bounds :54: error: invalid use of array with unspecified bounds

  • ソケットを使った通信

    いつ発生するか分からない128バイト程度のデータをできるだけ早く(1秒以内)インターネットの向こう側に点在している500台程度の端末に確実に送りたいのですが、どういう方法があるでしょうか?サーバのOSはUNIXを想定しています。 500台の端末から1台のサーバにTCPセッションを張ったまま(forkして子プロセスにするなど)にして、このようなことを実現するのは可能でしょうか?

  • int型ポインタの加算

    void foo() {   int *ptrInt=0;   char *ptrChar=0;   ptrInt++;   ptrChar++; } Windows2000上で、上記を実行すると ptrIntは4になります。 ptrCharは1になります。 なぜでしょうか。 32ビットとはいえ、 ptrIntとptrCharはアドレスを示しますよね。 アドレスに1加算するのだから、 int型、char型に関係なく、 いずれも1になるべきだと思います。 int型のポインタの場合示すデータは4バイトなので、 ポインタ1加算は、4(バイト)加算になるということでしょうか。

  • ソケットを使った通信

    いつ発生するか分からない128バイト程度のデータをできるだけ早く(1秒以内)インターネットの向こう側に点在している500台程度の端末に確実に送りたいのですが、どういう方法があるでしょうか?サーバのOSはUNIXを想定しています。 500台の端末から1台のサーバにTCPセッションを張ったまま(forkして子プロセスにするなど)にして、このようなことを実現するのは可能でしょうか?

  • 3次元配列の動的確保

    2次元配列は、 // 動的確保 int **mat = new int*[row]; for(i = 0; i < row; i++) mat[i] = new int[col]; //解放 for(i = 0; i < row; i++) delete [] mat[i]; delete [] mat; で、生成と開放はできたのですが、3次元となると、途端にわからなくなります。 かれこれ1時間半は試行錯誤はしているのですが、たどり着きそうにありません。 どなたかご教授願います。

  • 3次元配列の動的確保

    2次元配列は、 // 動的確保 int **mat = new int*[row]; for(i = 0; i < row; i++) mat[i] = new int[col]; //解放 for(i = 0; i < row; i++) delete [] mat[i]; delete [] mat; で、生成と開放はできたのですが、3次元となると、途端にわからなくなります。 かれこれ1時間半は試行錯誤はしているのですが、たどり着きそうにありません。 どなたかご教授願います。

  • 128bitSSLって、意味あるんですか?

    暗号化技術?のSSLについてですが、インターネットブラウザで再現できるのであれば、意味あるんでしょうか? 動画のコーデックみたいなものだと思い込んでいるのですが、SSLの仕組みに従って暗号化し、閲覧先で解凍のようなことをしているんでしょうか。 そんなことではIE6.0持っている人は全員解読できてしまうじゃありませんか!というのがギモンなのです。

  • 標準関数 getchar( ) の動作について

    getchar()の動作がよくわかりません。 以下のコードでバッファに'\n'が残ってしまっていて?その'\n'が読み込まれている事まで解りました。 どのようにすればキーボードから入力を受け付けるようになりますか? よろしくお願いいたします。 #include <stdio.h> int main(int argc, char *argv[]) {   int iDataA = 0;   int iDataB = 0;   /* キーボードから文字を入力 */   iDataA = getchar();  /* <-- 'a'を入力しエンター */   iDataB = getchar();  /* <-- キーボードからの入力を受け付けません */  return 0; }

  • 128bitSSLって、意味あるんですか?

    暗号化技術?のSSLについてですが、インターネットブラウザで再現できるのであれば、意味あるんでしょうか? 動画のコーデックみたいなものだと思い込んでいるのですが、SSLの仕組みに従って暗号化し、閲覧先で解凍のようなことをしているんでしょうか。 そんなことではIE6.0持っている人は全員解読できてしまうじゃありませんか!というのがギモンなのです。

  • PCって持ち込みですか?

    プログラマーの方って、仕事のときは、自分のパソコンを持ち込んで仕事するのですか? もしそうだとしたら、軽いパソコンを選んだほうがいいですよね。 でも、会社から支給されたパソコンなんですか?

    • ベストアンサー
    • noname#114571
    • C・C++・C#
    • 回答数5