BLK314 の回答履歴

全271件中201~220件表示
  • .NET C++の処理速度

    最近.NETについて調べていました。 .NETではコンパイル時にマネージドコードと呼ばれる中間ファイルが作成され、 それが.NETFramework上で動くという仕組みのため、C++で書こうがVBで書こうが 最終的にできあがるものは同じものになるということが分かりました。 私は、Cが有利な点は(Javaなど他の言語に比べ)処理速度が異常に早いことだと思っていましたが .NET上で動く場合はC++もVBも処理速度に差が出ることはあまりないのでしょうか? また、.NET、JVM、ネイティブのCの3つを比較した場合、 どのくらい処理速度に差があるでしょうか?(大雑把でもいいので) 私は [ネイティブC] >>>超えられない壁>>> [.NET] > [JVM] くらいかと思っているのですが‥ 以上、よろしくお願いします。

  • 【VC++2005】ソースの書き方:コーディングを****.hのファイルに書いてもいいでしょうか?変数名の命名規則はありますか?

    VC++2005の超超初心者です。 現在、VC++2005(Express Edition)でCLRでプロジェクトを つくり、いろいろとコーディングしています。 今まで、参考書「作って覚えるVisual C++ 2005 Express Editon」 を利用して、半分泣きながらコーディングしていました。 その参考書では、コーディングを*****.cppでなく、 ****.hのファイルにすべて書いているのですが、いいものでしょうか? 先輩が残していったVC++6.0のソースを見ると、cpp内に書いていますが どちらがよろしいでしょうか? また、他の参考書を見ると、変数名の先頭に「m」をつけていますが、 何か意味があるのでしょうか? (変数名をつける時の作法ってありますか?) せっかくなら、きれいなソースを書きたいと思うので、 詳しい方いましたら、ご教授頂きたく思います。

  • C++ API 全般 APIの概要は

    独学にてプログラミングを勉強しているのですが、いきづまってしまったので質問お願いします。 ※Visual Studio 2008 Express Editionsを使用しています。 まだプログラミングに関しての勉強を始めて1ヶ月程度で、最初はVB.NETから始めて、最近C++に乗り換えました。 趣味の範囲でのゲームを作ろうと思っていて、C++とDirectXでの開発を予定しています。(しかし、最終的にはゲームに限らずプログラミングの技術と知識を習得することを目標にしています。)(DirectXに関してはまだ手をつけていません。) まったく1からのスタートで、現在win32コンソールアプリケーションにてコードの勉強をしているところです。 勉強に使っている参考文献は ・VisualC++.NET逆引き大全500の極意 ・ゲームプログラマになる前に覚えて起きたい技術(これを買うには早すぎたようです…。第一章も半分くらいしか理解できません…。) サイトは ・主に「0からのゲームプログラミング」というサイトです。 http://www.plustarnet.com/aspil/Programming/ 本題の質問ですが、APIというものがいまいち理解できません。 (1)上記のような目的で使用するAPIは、標準 Windows APIというものでいいのでしょうか? (2)win32コンソールアプリケーションでは実行できるのに、win32プロジェクトでは実行できないのはなぜでしょうか? #include<windows.h> int WINAPI WinMain( HINSTANCE hInstance , HINSTANCE hPrevInstance , PSTR lpCmdLine , int nCmdShow ) { MessageBox(NULL , TEXT("Hello Wold!") , TEXT("メッセージボックス") , MB_OK); return 0; } (3)http://www.plustarnet.com/aspil/Programming/CConsole.htm このURLのコンソールAPIというのは、一般的に使われているものでしょうか?それともこのサイトのオリジナルのものでしょうか?win32コンソールアプリケーションでAPIを使うには、このURLのCConsoleクラスとうものをインクルードしないといけないのでしょうか?#include<windows.h>と宣言することによって気軽に使いたいものを使うことはできないのでしょうか? (4)#include<windows.h> とした場合、作るものが「win32コンソールアプリケーション」だったり「win32プロジェクト」だったり「windowsフォームアプリケーション」だったりで、使用方法などがまったく別になってしまうのでしょうか? (5)そもそも、上記の目的の場合APIを勉強する必要はあるでしょうか? (6)勉強をしたほうが後々に役立つ場合、どのAPIを勉強するのがいいのでしょうか?(APIといっても様々なものがあるんだなと思い質問しました。もし勘違いでAPIというものは一つしかないとしたらすみません。) なぜAPIに関してかというと、単純に上記のサイトで言語編の一番上から順に見ていったからです。 初心者すぎて質問が的外れかもしれませんがよろしくお願いします。

  • VCにて

    UNIXに依存する関数(msggetやpthread_createなど)をVisualStudioを使用してWindows上で動作させたいのですが、どのようにすればよいでしょうか? UNIX関係のライブラリorDLLをリンクさせる?みたいな事が必要でしょうか?

    • stpoiad
    • 回答数1
  • 標準ストリームが理解できません

    標準ストリームの意味が理解できず困っています。 色々なサイトを回って調べてみたのですが、あるサイトではデータが通る経路だと書かれていたり、またあるサイトでは入出力装置から情報を受け取ったり情報を渡したりするということだ、と書かれていたりなにが正しいのかさっぱりです。 普通に標準入出力関数とかは使ってきましたが、stdin等は理解しておく必要がありますよね?標準ストリームは具体的にどういう物か教えていただけたらうれしいです。回答お待ちしています。

    • noname#113783
    • 回答数2
  • デスクトップはどれがいいか?

    今、ノートPCを使っているのですが、他の事でで使うことになり家で使う新しいPCを買うことになりました。買おうとしているのはデスクトップです。予算は17万位です。使う用途は、音楽や動画を見ながらネットしたりとかですが、新しく買ったらいままでできなかったゲームなどをしてみたいなと思っています(FPSやシムシティなど)。 そこで迷っているのはソニーやNECなどのメーカー品を買うか、パソコン工房やドスパラなどから買うかで迷っています。 使いたいソフトや、場合にもよると思うのですがアフターサービスや本体の拡張性、性能など総合的に見てどちらのほうがよいでしょうか? また、メーカー品はFPSなどの3Dゲームには強いのでしょうか?スペックが足りない場合は拡張できるのでしょうか? パソコンの知識は基本的なもので、自作するほどの知識はありません。 質問ばかりで長文になってしまいましたがよろしくお願いします。

    • arasuta
    • 回答数6
  • 初心者です。アセンブラの習得方法について教えてください。

    今更ながら、アセンブラを勉強したいと思いスクールなどを探しましたが、見つかりません。 ネットでも色々と検索してみましたが、種類が多いのか何やら理解ができません。 プログラミングも全くしたことがありません。唯一、昔にマイフェス?というものを 使ったことがあるぐらいです。それも少しだけの期間です。 仕事で使うかもしれないので、努力でカバーしたいと思いますが、 寄り道せずに最短で習得していくには、どういったルートをたどるのが 宜しいでしょうか? 経験者の方のアドバイスをお伺いしたく、こちらに掲載しました。 過去の質問から色々と辿りましたが、???なので新たに質問させて頂いています。 どうかよきアドバイスをお願いいたします。

  • VC++での複数プロジェクトのリンクの方法

    VC++2005にてアプリケーションを作成しています。 MFCで別々のPCから新規作成したプロジェクトを、 一つのソリューション内に統合し、ビルドすることでリンクさせ、 一つのアプリとして動作させたいのですが、方法が分かりません。 具体的に言うと、 ・1機能につき1プロジェクト ・ソリューション内に複数プロジェクトが存在 ・機能別にリソースを作成 なぜプロジェクト分割させるかというと、 複数で作成したソースを統合させる際に、 「追加」⇒「既存のプロジェクト」にて、ソースファイルとリソースファイルを、 一括して統合させたいからです。 このような開発の仕方をしたことがないので、この方法が正しいかどうか 分かりませんが、解決策または、より理想的な作成方法をご存知の方おられましたら、 お手数ですがなるべく当方のような初心者でも分かるレベルで、ご教授お願い致します。

  • 変数アクセス(MFC)

    クラス別の変数間のアクセスについてよくわかりません。 【CADlg.cpp】 void CADlg::OnOK() { CB bdlg; CString str; m_ed.GetwindowText(str); Astr=&str; cdlg.DoModal(); CDialog::OnOK(); } 【CADlg.h】 public: CString *Astr; 【CB.cpp】 void CB::OnOK() { CStr CADlg dlg; dlg.Astr=&bstr;; MessageBox(bstr); CDialog::OnOK(); } 【CB.h】 CString bstr; 中身見てもちゃんと移ってないようです。 どうすればちゃんとできますでしょうか?

    • zaqwe
    • 回答数2
  • ソースの分け方がよく分かりません

    ソースの量が増えてきたので分けることにしました。 ・メインのソース ・クラスの定義のヘッダ(1),(2) ・クラスのメンバ関数の定義用のソース(1)、(2) このように3種類の構成にしています。 そして、クラス(1)の実体は次のように配列の形で作ります。 int aaa[] = {1,2,3}; const int Num = (sizeof aaa /sizeof aaa[0]); static DATA data[Num]; しかし、上記のコードをどこに書けば良いか分からず、とりあえずクラス(1)のソース内に書いたんですが、クラス(2)のヘッダとソース内でもNumを使うため、このままではNumが定義されていないというエラーになります。一体どのように書くべきでしょうか。よろしくお願いいたします。

    • sanato
    • 回答数5
  • exeファイルの中身を見ることは可能ですか?

    exeファイルの中身のソースを確認する方法、つまりC++などの言語に戻す方法はありますか? あるいはバイナリエディタでexeファイルの中身のソースを知る方法はありますか? 自作したexeファイルの中身のソースを勝手に解読されて、同じようなソフトを複製される可能性はありますか?

  • fwriteについて

    #include<stdio.h> int main(void) { FILE* fp; double f[5]={ 3.1, 2.9, 4.2, 3.7, 4.0}; double data; fp=fopen("test.txt","wb"); if(fp==NULL) { printf("text.txtが開けません。"); return 0; } fwrite(f,sizeof(double),5,fp); fclose(fp); }と入力したのでが、test.txtファイルを見ると 文字化けがでて、数値がわかりません。 数値もテキストファイルに出力する方法があったらご教授よろしくお願いします。できたらなぜこのようなことが起きたのか教えてくださるとうれしいです。

    • 79562
    • 回答数3
  • goto を使わずに

    VC++でプログラムを作ったんですが、上司からgotoは使うなとの指示があり困ってます。 なにせ、まだまだVC++になれてないし、かなりの初心者です。 C言語は学生のころ習いました。 if(a==0x0030){ //0による除算を回避するために0は入力不可とする(0ディバイト) int ret; //エラー画面出力 ret=AfxMessageBox("0は入力不可です。",MB_OK|MB_ICONEXCLAMATION);//入力が0の場合エラーを表示 goto end; } ・ ・ ・ end: //エラーがあった場合ここにとんで最初からやり直される ; } こんなかんじなのですが、なにか解決法ありませんか?

  • gotoを使わずに2

    やっぱり全体がないとわかりませんよね・・・ とりあえず、コピーします。見にくいとおもいますが・・ 中置法を逆ポーランドに変換するプログラムです。 void CPorandoView::OnButton1() { // TODO: この位置にコントロール通知ハンドラ用のコードを追加してください CString ss; char st[30],z[30],tai,ap; CEdit* myED1=(CEdit*)GetDlgItem(IDC_EDIT1); //EDIT1のアドレスをmyED1の代入 CEdit* myED2=(CEdit*)GetDlgItem(IDC_EDIT2); //EDIT2のアドレスをmyED2の代入 CEdit* myED3=(CEdit*)GetDlgItem(IDC_EDIT3); //EDIT3のアドレスをmyED3の代入 myED1->GetWindowText(ss); //入力された中置法式を作業領域ssに代入 int np=0,stp=0,zp=0,a=999,i=0,sw=0; char ka[30],s=0,kp=0; float st2[30]; float x=0; char p[100]="" ; char *N = new char[ss.GetLength()+1]; //ダイアログ(中置法入力枠)に入力された式をNに入れ込む strcpy( N, ss ); myED1->SetWindowText(""); myED2->SetWindowText(""); myED3->SetWindowText(""); if(N[0]==NULL){ int ret; ret=AfxMessageBox("入力がありません。",MB_OK|MB_ICONEXCLAMATION); goto end; } if(30<strlen(N)){ int ret; ret=AfxMessageBox("入力文字数オーバーです。",MB_OK|MB_ICONEXCLAMATION); goto end; } for(;a!='\0';np++){ a=N[np]; tai=0; if( a>0x003a){ if(a<0x007e ){ if(a!='*' && a!='/' && a!='+' && a!='-' && a!='(' && a!=')'){ int ret; ret=AfxMessageBox("指定外文字が入力されています。",MB_OK|MB_ICONEXCLAMATION); goto end; } } } if(a==0x0030){ int ret;      ret=AfxMessageBox("0は入力不可です。",MB_OK|MB_ICONEXCLAMATION);//入力が0の場合エラーを表示 goto end; } if(a>'0' && a<='9'){      if(z[zp-1]>='0' && z[zp-1]<='10'){      z[zp]=','; zp++; } z[zp]=a;      zp++; z[zp]='\0';      sw--; }else if(a!='(' && a!=')'){ if(stp==0){ st[stp]=a; stp++; st[stp]='\0'; sw++; }else if(st[stp-1]!='('){ if(st[stp-1]=='*' || st[stp-1]=='/'){ tai=2; }else{ tai=1; } }else{ st[stp]=a; stp++; } if(a=='*' || a=='/'){ ap=2;      sw++; }else{ ap=1; sw++; } if(sw>1){ int ret; ret=AfxMessageBox("演算子が連続しているか、\n先頭、または最後尾に演算子が入力されています。",MB_OK|MB_ICONEXCLAMATION); goto end; } if(tai!=0){ if(ap<=tai){ z[zp]=st[stp-1];                st[stp-1]=a; zp++; z[zp]='\0'; st[stp]='\0'; if(a==st[stp-2]){          z[zp]=st[stp-2]; zp++;          st[stp-2]=st[stp-1]; z[zp]='\0'; st[stp-1]='\0'; stp--; } }else{ st[stp]=a; stp++; st[stp]='\0'; } } }else if(a=='('){ st[stp]='('; stp++; st[stp]='\0'; }else { while(st[stp]!='('){、 stp--; if(st[stp]!='('){ z[zp]=st[stp]; zp++; } } } } if(stp>=0){ stp--; while(stp>=1){ z[zp]=st[stp-1]; zp++; z[zp]='\0'; stp--; } } if(sw<=0){ int ret; ret=AfxMessageBox("数値は1~9までです。",MB_OK|MB_ICONEXCLAMATION);//演算子がないとエラー処理 goto end; } z[zp+1]='\0'; myED2->SetWindowText(z); end: ; }

  • fopen()とFileOpen() どの様に違いますか?

    Borland C++Builder5でテキストファイルを読み書きするようなプログラムを作っています。 テキストファイルを読み書きするのに、fopen()、fgets()というような関数を使っています。 しかし、FileOpen()関数などもあり、どちらを使うべきか分かっていません。 結果が同じならどちらでも良いのですが、Windows7が出たり、将来64ビットOSが主流になった時などに、今私が作ったプログラムが動かない、というようなことが起きると困ります。 私にプログラム言語を教えてくれた人が、ちょっと古い人で、昔の知識を引きずっているようなのです。 現状は何も問題は起きていないのですが、ちょっと心配なのです。

    • CLMN
    • 回答数4
  • void型ポインタについて

    -------------------------------- #include<stdio.h> void uni_disp(void *p,int typ); int main() { int idt=123456; double ddt=56.789; char ss[]="abcdef"; uni_disp(&idt,'I'); uni_disp(&ddt,'D'); uni_disp(ss,'S'); uni_disp("STRING",'S'); return 0; } void uni_disp(void *p,int typ) { if(typ=='I'){ printf("%d\n",*(int *)p); } else if(typ=='D'){ printf("%f\n",*(double *)p); } else if(typ=='S'){ printf("%s\n",(char *)p); } } ----------------------------------- 以上のプログラム等で、void型ポインタをint型ポインタ、double型ポインタとみなす場合の、「*(int *)p」や「*(double *)p」の表記がどういう仕組みになっているか分かりません。 「*(int)p」などはエラーが出るのですが、やはり表記の意味を理解していないため何故か分かりません。 「*(int *)p」などの表記を分解して教えていただけると嬉しいです。

    • muffler
    • 回答数4
  • コンパイルせずにマクロの置き換えだけ実行(c言語)

     こんにちは。私はwin32APIを勉強しているc言語初心者なのですが、win32APIにはマクロで定義されたたくさんの新しい型があって、何がなんだか分からなくなります。なのでマクロの置き換えだけを実行してその新しい型がなんの型で出来ているのかを調べたいのですが、それをするにはどうすればいいでしょうか?使っているコンパイラはVC++2008です。回答よろしくお願いします。

    • noname#113783
    • 回答数5
  • 物理を0から学びたい大人です。

    高校で物理を一切履修せず、大人になったて、宇宙や車に興味を持ち出した今、物理を0から学んでみたいと思うようになりました。 高校の参考書を読み始めても公式の羅列が多くて中々頭に入りません。 知識ゼロからゆっくり学べる、物理に関する書籍や参考書はありますでしょうか。

  • (試聴あり)クラシックの好きな人はどういう意識を持っているか?

    (試聴あり)あなたはどの曲が好みですか?? http://www.discas.net/netdvd/artistInfoView.do?pT=0&mdlArtistId=-at0000041621 1)no.13 神秘なる星屑の輪 2)no.9 クリスタル・オーシャン http://www.discas.net/netdvd/albumInfoView.do?pT=0&mdlGoodsId=al0000118333 3)no.7 FRAGRANCE それぞれサンプル曲を聴いていただき(スピーカマークをクリック) 好きな曲順に番号を並べてください。 また、曲について感じたことがあったら書いてください。 音楽論文の参考にさせていただきますorz こういった音楽に対してクラシックの好きな人はどういう意識を持っているかを知る貴重な質問です(アンケートカテでは回答が集まらないので)。

  • ユーザー名とパスワード

    今日、WindowsVistaを購入して、ネットに接続しようとしましたが、ケーブルをさすだけでは接続されず、「プロバイダーのユーザー名とパスワードを入れてください」という画面がでました。 ところが、プロバイダーと契約したときの通知が見当たらず設定ができません。ヤフーBBに問い合わせようとしましたが、時間外でした・・・。 ユーザー名とパスワードを設定しないと、インターネットに接続できないのですか?今までは、ただケーブルを差し込めば使えたのですが・・・。 どなたか教えてください。