hidebun の回答履歴

全363件中241~260件表示
  • 問題がとけません

    以下の設問に答えよ。 型はC言語の基本型でchar型を除いたもので答えよ。 1.次の演算結果の型と値を求めよ。 100/10*5 2.次の演算結果の型と値を求めよ。 1.0f/2 3.次の演算結果の型と値を答えよ。 100/10*5.0 4.次の演算結果の値を答えよ。 54321-54321/100*100 5.次の演算結果の値を答えよ。※(int)(式)は,式の値の小数点以下を切り捨ててint型に変換する。 (int)(123/5.0+0.5) 6.次の演算結果の型と値を答えよ。 5<2 7.次の演算結果の型と値を答えよ。 5.0>2 8.変数a,b,cに関して,a<b<cの真偽を評価する論理式を書け。 9.次の文が実行された後,変数i,kの値はいくらになっているか。変数はどちらもint型とする。 i=0; k=0; k=5+(++i); 10.次の文が実行された後,変数kの値はいくらになっているか。変数はどちらもint型とする。 i=5; k=5; k *= i<0 ? (-i) : i; 11.次の文Aは実行されるか。kの型はintである。文法的な誤りはない。 if(k = 0)  文A

  • プログラムの考え方とDBの扱いかたについて

    技術的な質問ではなく、考え方についての質問です。 こっちを立てるとあっちが立たずのような状態で困ってます。 どのカテゴリで質問するか悩んだのですが、直近の投稿数が多いのでC言語のところで質問させて頂きます。 ご教示ください。 現在こういうバッチプログラムがあります。 バッチA  > (1)外部から前日分の確定データリストを取得  > (2)データリストに基づいて特定処理の実施  > (3)特定処理の対象になったものをDB(テーブルA)に格納 ※1つのプログラムで3つの処理を行ってます 今度、データリストの取得先に外部2が追加されます。 仕様が同じであれば、バッチAと同様のものを作ればいいのですが、 外部2の場合、1か月の間データが確定されないという仕様があります。 前日分のデータが確定するのは、 1カ月後までの間に取得するデータリストにキャンセルデータが無かった場合です。 1.そこでこのように考えました。 バッチA  > 外部2から1カ月分のデータリストを取得  > 取得データから、1か月前のデータを対象に1ヶ月間キャンセルデータが無いものを抽出する  > (2)データリストに基づいて特定処理の実施  > (3)特定処理の対象になったものをDBに格納 2.でも、毎日1か月分のデータを取得して抽出処理を行うのは負担になるし、 毎日ほぼ同じデータを取得するのはあほらしいと思い、以下のように考えました。 バッチA  > 外部2から前日分のデータリストをDB(テーブルB)に格納  > DBから1か月前のデータを対象に1ヶ月間キャンセルデータが無いものを抽出する  > (2)データリストに基づいて特定処理の実施  > (3)特定処理の対象になったものをDB(テーブルA)に格納 3.今度はそもそもバッチ分けた方がいいんじゃないかと思い、以下のように考えました。 バッチ1  > 外部2から前日分のデータリストをDB(テーブルB)に格納 バッチA  > DBから1か月前のデータを対象に1ヶ月間キャンセルデータが無いものを抽出する  > (2)抽出したデータリストに基づいて特定処理の実施  > (3)特定処理の対象になったものをDB(テーブルA)に格納 4.さらに、キャンセルデータの処理も別バッチにすれば、   バッチAでの処理がわかりやすくなるじゃないかと思い、以下のように考えました。 バッチ1  > 外部2から前日分のデータリストをDB(テーブルB)に格納 バッチ2  > DB(テーブルB)から1か月前のデータを対象に1ヶ月間キャンセルデータが無いものを抽出する  > 抽出したデータのキャンセルデータのレコードをDB(テーブルB)から削除 バッチA  > (1)DB(テーブルB)から前日分のデータリストを取得  > (2)データリストに基づいて特定処理の実施  > (3)特定処理の対象になったものをDB(テーブルA)に格納 ここまで考えてどうするのがスマートなのかよくわからなくなってきてしまいました。 3か4でいこうと思うのですが、3の時にバッチAで抽出処理をするのはいまいちって思ってます。 それで4にしようと思ったのですが、 テーブルBは取得データをそのままの状態で入れておくって当初考えてたので、 それをあとからレコード削除したりするのもどうなんだろうと思ってます。 確定したデータと未確定のデータが混在するのもなんだか腑に落ちません。 それだったら、新たにテーブルCを作って、確定データを突っ込んでおくってことも考えたのですが、 そうなると、バッチA最後に格納しているテーブルAと何も変わらないようなものがもう一つできてしまいます。 どういうのがスマートというか良い考え方なのでしょうか。

    • karace
    • 回答数2
  • プログラムの考え方とDBの扱いかたについて

    技術的な質問ではなく、考え方についての質問です。 こっちを立てるとあっちが立たずのような状態で困ってます。 どのカテゴリで質問するか悩んだのですが、直近の投稿数が多いのでC言語のところで質問させて頂きます。 ご教示ください。 現在こういうバッチプログラムがあります。 バッチA  > (1)外部から前日分の確定データリストを取得  > (2)データリストに基づいて特定処理の実施  > (3)特定処理の対象になったものをDB(テーブルA)に格納 ※1つのプログラムで3つの処理を行ってます 今度、データリストの取得先に外部2が追加されます。 仕様が同じであれば、バッチAと同様のものを作ればいいのですが、 外部2の場合、1か月の間データが確定されないという仕様があります。 前日分のデータが確定するのは、 1カ月後までの間に取得するデータリストにキャンセルデータが無かった場合です。 1.そこでこのように考えました。 バッチA  > 外部2から1カ月分のデータリストを取得  > 取得データから、1か月前のデータを対象に1ヶ月間キャンセルデータが無いものを抽出する  > (2)データリストに基づいて特定処理の実施  > (3)特定処理の対象になったものをDBに格納 2.でも、毎日1か月分のデータを取得して抽出処理を行うのは負担になるし、 毎日ほぼ同じデータを取得するのはあほらしいと思い、以下のように考えました。 バッチA  > 外部2から前日分のデータリストをDB(テーブルB)に格納  > DBから1か月前のデータを対象に1ヶ月間キャンセルデータが無いものを抽出する  > (2)データリストに基づいて特定処理の実施  > (3)特定処理の対象になったものをDB(テーブルA)に格納 3.今度はそもそもバッチ分けた方がいいんじゃないかと思い、以下のように考えました。 バッチ1  > 外部2から前日分のデータリストをDB(テーブルB)に格納 バッチA  > DBから1か月前のデータを対象に1ヶ月間キャンセルデータが無いものを抽出する  > (2)抽出したデータリストに基づいて特定処理の実施  > (3)特定処理の対象になったものをDB(テーブルA)に格納 4.さらに、キャンセルデータの処理も別バッチにすれば、   バッチAでの処理がわかりやすくなるじゃないかと思い、以下のように考えました。 バッチ1  > 外部2から前日分のデータリストをDB(テーブルB)に格納 バッチ2  > DB(テーブルB)から1か月前のデータを対象に1ヶ月間キャンセルデータが無いものを抽出する  > 抽出したデータのキャンセルデータのレコードをDB(テーブルB)から削除 バッチA  > (1)DB(テーブルB)から前日分のデータリストを取得  > (2)データリストに基づいて特定処理の実施  > (3)特定処理の対象になったものをDB(テーブルA)に格納 ここまで考えてどうするのがスマートなのかよくわからなくなってきてしまいました。 3か4でいこうと思うのですが、3の時にバッチAで抽出処理をするのはいまいちって思ってます。 それで4にしようと思ったのですが、 テーブルBは取得データをそのままの状態で入れておくって当初考えてたので、 それをあとからレコード削除したりするのもどうなんだろうと思ってます。 確定したデータと未確定のデータが混在するのもなんだか腑に落ちません。 それだったら、新たにテーブルCを作って、確定データを突っ込んでおくってことも考えたのですが、 そうなると、バッチA最後に格納しているテーブルAと何も変わらないようなものがもう一つできてしまいます。 どういうのがスマートというか良い考え方なのでしょうか。

    • karace
    • 回答数2
  • VCでのスタックサイズ

    VC++2005のスタックサイズのデフォルトは知らないのですが プロパティ  構成プロパティ   C/C++    コマンドライン 追加のオプション /F 1000000000 953MBのスタックで約1Gのスタックはできるのでしょうか? また、実行ファイル(exeファイルから)スタック領域がわかる方法があるのでしょうか?

    • bazax
    • 回答数2
  • forkで子が親を終了させるか?

    fork() によって作られた子プロセスが、親プロセスを終了させる場合があるでしょうか? 形としては良く見かけるもので次のようになっています。 pid_t pid = fork(); if (pid < 0) {  エラー処理  return; } else if (pid == 0) {  子の処理 ... (1)  _exit(0); } /* ここが実行されない場合がある */ return; (1)の箇所に sleep() を幾らか入れると再現しなくなります。 親子の関係で子が親へ影響を与えることがあるでしょうか?

  • forkで子が親を終了させるか?

    fork() によって作られた子プロセスが、親プロセスを終了させる場合があるでしょうか? 形としては良く見かけるもので次のようになっています。 pid_t pid = fork(); if (pid < 0) {  エラー処理  return; } else if (pid == 0) {  子の処理 ... (1)  _exit(0); } /* ここが実行されない場合がある */ return; (1)の箇所に sleep() を幾らか入れると再現しなくなります。 親子の関係で子が親へ影響を与えることがあるでしょうか?

  • std::stringstream で得るテータを char にしたいです。

    型の異なるものを出力する際に、 sprintfを用いて行っていましたが、 「std::stringstream 」で得るデータを、 「char」にて出力する場合は、 どのようにsprintfを使用すれば正解でしょうか? std::stringstream hoge ; hoge << "20090414" << "http.html"; この「hoge」を「std::stringstream」ではなく、 「char」で出力したいと思っています。 宜しくお願いします。

    • ok_mami
    • 回答数1
  • メモリ確保エラー時の効率的な書き方

    mallocなどで複数の変数に対してメモリを確保する場合があると思います.例えば3つの変数の場合, char *a, *b, *c; a = (char *)malloc(100); if(a==NULL){ /* メモリ確保できなかったとき */ return (-1); } b = (char *)malloc(100); if(b==NULL){ free(a); return (-1); } c = (char *)malloc(100); if(c==NULL){ free(a); free(b); return (-1); } 変数が多くなるにつれて後から確保する変数のエラー処理(すでに確保したメモリのfree)が増えてしまうので,何か良い方法(コードが短くなるような)はないでしょうか?

    • landmes
    • 回答数4
  • 非末尾再帰について

    非末尾再帰を理解しようとすごく簡単なプログラムを書いてみたのですが、 どのように動作しているのかいまいち分かりません。 プログラムは以下のようなものです。 void rec(int n); int main(){ int n = 3; rec(n); } void rec(int n) { cout<<"AAA"<<n<<endl; if(n > 0){ n--; cout<<"BBB"<<n<<endl; rec(n); } cout<<"CCC"<<n<<endl; } 実行すると、出力は以下のようになりました。 AAA3 BBB2 AAA2 BBB1 AAA1 BBB0 AAA0 CCC0 CCC0 CCC1 CCC2 1回目のCCC0までは理解できますが、 そのあとなぜCCC0、CCC1、CCC2となるのか 分かりません。 そこが内部でどのように動作しているのか 説明していただけるとありがたいです。

    • myusnow
    • 回答数1
  • CFile Openで開いたファイルに書き込み場所をしていしてWriteする

    現在、ファイルに書込む処理を施しています。 現在、以下のようなところまでいきました。 CFile file; file.Open(ファイルのフルパス, 書込みモードで開く); block bc; // グローバルで宣言した構造体 /* なお、この中には struct block { int x; int y; }; */ があります。 そして、それを bc.x = 1; // '1'は例 bc.y = 1; // 同上 とするのですが、これではどのファイルに書き込むか、ということがわからないのでイメージとしては file.bc.x(y)としたいです。 こうするにはどうすればよいのでしょうか? ご教授のほどよろしくお願いいたします。

  • CFile Openで開いたファイルに書き込み場所をしていしてWriteする

    現在、ファイルに書込む処理を施しています。 現在、以下のようなところまでいきました。 CFile file; file.Open(ファイルのフルパス, 書込みモードで開く); block bc; // グローバルで宣言した構造体 /* なお、この中には struct block { int x; int y; }; */ があります。 そして、それを bc.x = 1; // '1'は例 bc.y = 1; // 同上 とするのですが、これではどのファイルに書き込むか、ということがわからないのでイメージとしては file.bc.x(y)としたいです。 こうするにはどうすればよいのでしょうか? ご教授のほどよろしくお願いいたします。

  • Borland C++ Compiler 5.5の警告について

    Borland C++ Compiler 5.5を使用してコンパイルしているのですが、 下記のソースをコンパイルするとエラーがでます。 #include <stdio.h> ------test.c------ int main(void) { int a; int b=0; b = a; return 0; } 警告 W8004 error.c 6: 'b' に代入した値は使われていない(関数 main )という警告なのですが、初期化をしている変数すべての警告がでてしまい困っています。 この警告だけを表示させない方法等あるのでしょうか?

  • pthread_cond_wait 取りこぼし?

    はじめまして。 pthreadのお勉強がてら、パイプライン処理を実装してみようととりあえず実証コードを書いてみましたが、うまく意図した動きをしてくれません。 やりたいことは、処理ステージが2つあって、メインからステージ1をキックし、ステージ1は自分の処理が終わったらステージ2をキックするといった動作です。(メイン、ステージ1、ステージ2を並列に動作させたい) 取りあえず連鎖的に動作するか試したいだけなので、ステージ間のデータの受け渡しとかは、後で考えるとします。 それで、以下のような単純なコードを書きました。 期待する結果は、最後に表示される数値が 10000, 10000, 10000 になることですが、実際は、10000, 4401, 4401 のようにステージ1,2が少なくなります。 一応、それなりに調べて条件変数のセオリーに従い書いたつもりなのですが、どうしてこうなるか、ご教授ください。 test.c (空白を全角にしてあります) ------ #include <pthread.h> #include <stdio.h> #include <stdlib.h> #include <string.h> pthread_mutex_t   mutex1,           mutex2; pthread_cond_t   cond1,           cond2; int         ready1,           ready2; int         end1,           end2; int         count1,           count2; void * stage1( void *arg ) {   pthread_mutex_lock( &mutex1 );   while( 1 ) {     /* wait for my signal & job */     while ( ready1 == 0 ) {       pthread_cond_wait( &cond1, &mutex1 );     }     if ( end1 == 1 ){  /* is shutdown thread */       break;     }     /* my job. */     count1++;     /* job clear */     ready1 = 0;     /* forward next stage */     pthread_mutex_lock( &mutex2 );     ready2 = 1;     pthread_cond_signal( &cond2 );     pthread_mutex_unlock( &mutex2 );   }   pthread_mutex_unlock( &mutex1 );   return NULL; } void * stage2( void *arg ) {   pthread_mutex_lock( &mutex2 );   while( 1 ) {     while ( ready2 == 0 ) {       pthread_cond_wait( &cond2, &mutex2 );     }     if ( end2 == 1 ){       break;     }     count2++;     ready2 = 0;   }   pthread_mutex_unlock( &mutex2 );   return NULL; } int main( ) {   int     i;   pthread_t  t1,         t2;   pthread_mutex_init( &mutex1, 0 );   pthread_cond_init ( &cond1, 0 );   ready1 = 0;   end1  = 0;   count1 = 0;   pthread_create( &t1, 0, stage1, NULL );   pthread_mutex_init( &mutex2, 0 );   pthread_cond_init ( &cond2, 0 );   ready2 = 0;   end2  = 0;   count2 = 0;   pthread_create( &t2, 0, stage2, NULL );   for ( i=0; i<10000; i++ ){     pthread_mutex_lock( &mutex1 );     ready1 = 1;     pthread_cond_signal( &cond1 );     pthread_mutex_unlock( &mutex1 );   }   pthread_mutex_lock( &mutex1 );   ready1 = 1;   end1  = 1;   pthread_cond_signal( &cond1 );   pthread_mutex_unlock( &mutex1 );   pthread_join(t1, 0 );   pthread_cond_destroy( &cond1 );   pthread_mutex_destroy( &mutex1 );   pthread_mutex_lock( &mutex2 );   ready2 = 1;   end2  = 1;   pthread_cond_signal( &cond2 );   pthread_mutex_unlock( &mutex2 );   pthread_join(t2, 0 );   pthread_cond_destroy( &cond2 );   pthread_mutex_destroy( &mutex2 );   printf("%d, %d, %d\n", i, count1, count2);   return 0; } ------ gcc -o test -lpthread test.c 以上

  • pthread_cond_wait 取りこぼし?

    はじめまして。 pthreadのお勉強がてら、パイプライン処理を実装してみようととりあえず実証コードを書いてみましたが、うまく意図した動きをしてくれません。 やりたいことは、処理ステージが2つあって、メインからステージ1をキックし、ステージ1は自分の処理が終わったらステージ2をキックするといった動作です。(メイン、ステージ1、ステージ2を並列に動作させたい) 取りあえず連鎖的に動作するか試したいだけなので、ステージ間のデータの受け渡しとかは、後で考えるとします。 それで、以下のような単純なコードを書きました。 期待する結果は、最後に表示される数値が 10000, 10000, 10000 になることですが、実際は、10000, 4401, 4401 のようにステージ1,2が少なくなります。 一応、それなりに調べて条件変数のセオリーに従い書いたつもりなのですが、どうしてこうなるか、ご教授ください。 test.c (空白を全角にしてあります) ------ #include <pthread.h> #include <stdio.h> #include <stdlib.h> #include <string.h> pthread_mutex_t   mutex1,           mutex2; pthread_cond_t   cond1,           cond2; int         ready1,           ready2; int         end1,           end2; int         count1,           count2; void * stage1( void *arg ) {   pthread_mutex_lock( &mutex1 );   while( 1 ) {     /* wait for my signal & job */     while ( ready1 == 0 ) {       pthread_cond_wait( &cond1, &mutex1 );     }     if ( end1 == 1 ){  /* is shutdown thread */       break;     }     /* my job. */     count1++;     /* job clear */     ready1 = 0;     /* forward next stage */     pthread_mutex_lock( &mutex2 );     ready2 = 1;     pthread_cond_signal( &cond2 );     pthread_mutex_unlock( &mutex2 );   }   pthread_mutex_unlock( &mutex1 );   return NULL; } void * stage2( void *arg ) {   pthread_mutex_lock( &mutex2 );   while( 1 ) {     while ( ready2 == 0 ) {       pthread_cond_wait( &cond2, &mutex2 );     }     if ( end2 == 1 ){       break;     }     count2++;     ready2 = 0;   }   pthread_mutex_unlock( &mutex2 );   return NULL; } int main( ) {   int     i;   pthread_t  t1,         t2;   pthread_mutex_init( &mutex1, 0 );   pthread_cond_init ( &cond1, 0 );   ready1 = 0;   end1  = 0;   count1 = 0;   pthread_create( &t1, 0, stage1, NULL );   pthread_mutex_init( &mutex2, 0 );   pthread_cond_init ( &cond2, 0 );   ready2 = 0;   end2  = 0;   count2 = 0;   pthread_create( &t2, 0, stage2, NULL );   for ( i=0; i<10000; i++ ){     pthread_mutex_lock( &mutex1 );     ready1 = 1;     pthread_cond_signal( &cond1 );     pthread_mutex_unlock( &mutex1 );   }   pthread_mutex_lock( &mutex1 );   ready1 = 1;   end1  = 1;   pthread_cond_signal( &cond1 );   pthread_mutex_unlock( &mutex1 );   pthread_join(t1, 0 );   pthread_cond_destroy( &cond1 );   pthread_mutex_destroy( &mutex1 );   pthread_mutex_lock( &mutex2 );   ready2 = 1;   end2  = 1;   pthread_cond_signal( &cond2 );   pthread_mutex_unlock( &mutex2 );   pthread_join(t2, 0 );   pthread_cond_destroy( &cond2 );   pthread_mutex_destroy( &mutex2 );   printf("%d, %d, %d\n", i, count1, count2);   return 0; } ------ gcc -o test -lpthread test.c 以上

  • pthread_cond_wait 取りこぼし?

    はじめまして。 pthreadのお勉強がてら、パイプライン処理を実装してみようととりあえず実証コードを書いてみましたが、うまく意図した動きをしてくれません。 やりたいことは、処理ステージが2つあって、メインからステージ1をキックし、ステージ1は自分の処理が終わったらステージ2をキックするといった動作です。(メイン、ステージ1、ステージ2を並列に動作させたい) 取りあえず連鎖的に動作するか試したいだけなので、ステージ間のデータの受け渡しとかは、後で考えるとします。 それで、以下のような単純なコードを書きました。 期待する結果は、最後に表示される数値が 10000, 10000, 10000 になることですが、実際は、10000, 4401, 4401 のようにステージ1,2が少なくなります。 一応、それなりに調べて条件変数のセオリーに従い書いたつもりなのですが、どうしてこうなるか、ご教授ください。 test.c (空白を全角にしてあります) ------ #include <pthread.h> #include <stdio.h> #include <stdlib.h> #include <string.h> pthread_mutex_t   mutex1,           mutex2; pthread_cond_t   cond1,           cond2; int         ready1,           ready2; int         end1,           end2; int         count1,           count2; void * stage1( void *arg ) {   pthread_mutex_lock( &mutex1 );   while( 1 ) {     /* wait for my signal & job */     while ( ready1 == 0 ) {       pthread_cond_wait( &cond1, &mutex1 );     }     if ( end1 == 1 ){  /* is shutdown thread */       break;     }     /* my job. */     count1++;     /* job clear */     ready1 = 0;     /* forward next stage */     pthread_mutex_lock( &mutex2 );     ready2 = 1;     pthread_cond_signal( &cond2 );     pthread_mutex_unlock( &mutex2 );   }   pthread_mutex_unlock( &mutex1 );   return NULL; } void * stage2( void *arg ) {   pthread_mutex_lock( &mutex2 );   while( 1 ) {     while ( ready2 == 0 ) {       pthread_cond_wait( &cond2, &mutex2 );     }     if ( end2 == 1 ){       break;     }     count2++;     ready2 = 0;   }   pthread_mutex_unlock( &mutex2 );   return NULL; } int main( ) {   int     i;   pthread_t  t1,         t2;   pthread_mutex_init( &mutex1, 0 );   pthread_cond_init ( &cond1, 0 );   ready1 = 0;   end1  = 0;   count1 = 0;   pthread_create( &t1, 0, stage1, NULL );   pthread_mutex_init( &mutex2, 0 );   pthread_cond_init ( &cond2, 0 );   ready2 = 0;   end2  = 0;   count2 = 0;   pthread_create( &t2, 0, stage2, NULL );   for ( i=0; i<10000; i++ ){     pthread_mutex_lock( &mutex1 );     ready1 = 1;     pthread_cond_signal( &cond1 );     pthread_mutex_unlock( &mutex1 );   }   pthread_mutex_lock( &mutex1 );   ready1 = 1;   end1  = 1;   pthread_cond_signal( &cond1 );   pthread_mutex_unlock( &mutex1 );   pthread_join(t1, 0 );   pthread_cond_destroy( &cond1 );   pthread_mutex_destroy( &mutex1 );   pthread_mutex_lock( &mutex2 );   ready2 = 1;   end2  = 1;   pthread_cond_signal( &cond2 );   pthread_mutex_unlock( &mutex2 );   pthread_join(t2, 0 );   pthread_cond_destroy( &cond2 );   pthread_mutex_destroy( &mutex2 );   printf("%d, %d, %d\n", i, count1, count2);   return 0; } ------ gcc -o test -lpthread test.c 以上

  • ある一定のイベント中、マウスの動かせる範囲を限定する

    VC++ 経験半年の者です。 現在、下記のような処理を施したいのですが、案が浮かばず悪戦苦闘しております。 __________________________________________________ ある一定のイベント(今回は左クリックでマウスドラッグ)中、マウスドラッグできる範囲を特定したいです。 今回の場合、ピクチャボックス内でマウスドラッグをし、ピクチャボックス領域外にマウスカーソルが出ないようにしたいです。 つまり、領域内でのみ移動可能で CPOINT pt; pt.x > ピクチャボックス領域 だった場合はそれ以上その方向にはカーソルを移動不可にしたいです。 そのための領域の取得 CRect CPoint 等は実装済みです。 説明下手で申し訳ございませんが、ご教授いただきたいと思います。 よろしくお願いいたします。

    • doborn
    • 回答数1
  • なぜ、i++なのか?(ものすごくくだらない質問です)

    C言語や、それに文法が似ている言語では、 for(i=0; i<10; i++)... のような例をよく見かけます。 ここで、何故か++iよりi++を使うほうを非常によく見かけるのですが、何故なんでしょうか? 単独で使う分にはどちらでも同じなので、実際はどうでもいいのですが。 個人的には、++iは副作用がまずあって、その副作用の結果を返すのに対し、i++は副作用があることは同じですが、「副作用を起こす前の値」を返す演算ということで、i++の方が少々不自然な感じがしますので、++iの方が好きなのですが。 もし、何か特別な理由があることを知ってらっしゃる方がいたらお願いいたします。

    • noname#130082
    • 回答数12
  • ブラウザ上でクライアント側で動くアプリの開発

    現在、ブラウザ上でクライアント側で動くアプリを作りたいと考えているのですが、JAVA ScriptやFlashでは簡単にソースを見られてしまいます。 そのため、C#.NETとかで作れないかと考えているのですが、可能でしょうか? 可能でしたら、どの様にして作成すればいいでしょうか? また、Cを使う以外に、もっと良い方法があるのならその方法を教えて欲しいです よろしくお願いします。

  • ディレクトリの属性の検出とディレクトリの作成

    OSはWinodws xp ですが、 Win32でどうやって指定されてたディレクトリのReadOnlyの属性を検出しますか? また、どうやってReadOnlyのディレクトリを作りますか? 知っている方は教えていただけませんか?

    • ikutame
    • 回答数10
  • ディレクトリの属性の検出とディレクトリの作成

    OSはWinodws xp ですが、 Win32でどうやって指定されてたディレクトリのReadOnlyの属性を検出しますか? また、どうやってReadOnlyのディレクトリを作りますか? 知っている方は教えていただけませんか?

    • ikutame
    • 回答数10