• 締切済み

コンパイルできない・・

Microsoft Visual Studio 10.0を使ってwindows7上でC原語ソースをコンパイルできません。 オススメのコンパイラー、設定方法など教えて欲しいです。 プログラミングの勉強をしたいのでお願いします。

  • krrsa
  • お礼率73% (177/241)

みんなの回答

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.3

あなたの言う「コンパイルできない」というのは、どういう事なのでしょうか? ・コンパイルを実行すると、エラーメッセージが表示されて、最終的な実行ファイルが作成されない (プログラマーが「コンパイルできない」と言うとこちらの意味が普通) ・そもそも、「コンパイルのやりかた」が解らない 前者なら、具体的なエラーメッセージと、ソースコードが無いと答えようがありません。 後者なら、本屋に行って「Visual Studioの使い方」みたいな本を探すのがいいでしょう。

  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.2

手元のはVC++2010ExpressEditionですが……。 起動後、[ファイル][新規作成][プロジェクト]と進んで、 「Win32 コンソール アプリケーション」を選択。 下の「名前」に適当な名前を設定します。 # 「qa7326499」とかつけてみる。 ソリューション名にも同じモノがつきますが、とりあえずそのままで。 # 1つのソリューションに複数のプロジェクトを入れられますが… # VSに慣れるまでは1つのソリューションに1つのプロジェクトにしておいた方がいいでしょう。 [OK]を押すとウィザードが起動します。 [次へ]を押してアプリケーションの設定で「空のプロジェクト」にチェックをつけて[完了]を。 左側のペインに「ソリューションエクスプローラ」が出ていますので、 「ソース ファイル」の上で右クリック、[追加][新しい項目]を。 「C++ ファイル」を選択して、名前に適当な名前を。 # 「main.c」とかつけてみる。拡張子を.cにしておくこと。 [追加]を押すと、プロジェクトにソースファイルが追加されます。 右側のエディタで入門書などに書かれているソースを入力してください。 # とりあえずお約束のHello Worldですかねぇ。 入力したら保存しておきます。 メニューの[プロジェクト][~のプロパティ]からプロジェクトのプロパティを開きます。 「構成プロパティ」のツリーを開いて「全般」というのを選択、 右側の表示が変わりますから「文字セット」を「マルチ バイト文字セットを使用する」に変更して、[OK]で閉じます。 [デバッグ][ソリューションのビルド]でコンパイルします。 エラーが出たら修正してビルドを。 ビルドが成功したら、[デバッグ][デバッグ開始]で実行できます。 # ただしコンソールが一瞬で消えるかも知れませんが。 # ブレークポンイトを設定して停めるか、getchar()でも入れてキー待ちをするか……。 # [ツール][設定][上級者用の設定]に変更して、「デバッグなしで開始」にするとキー待ちしてくれますかね。 http://www.amazon.co.jp/dp/4822294234/ http://www.amazon.co.jp/dp/4822294285/ 辺りに書かれていそうですけどね……。 ある程度慣れてきたら「空のプロジェクト」ではなく、スケルトンで作成されるものを使うのでも良いかも知れません。 UNICODE前提(正確にはUNICODE/マルチバイト両方に対応できる)なコードが作られますし、 プリコンパイル済みヘッダーでハマるかも知れませんが。 「ソリューション」「プロジェクト」の関係になれてきたら1ソリューションに複数のプロジェクトを入れてみたり。 # ソリューション名「C言語演習」、プロジェクト「課題1」「課題2」とか…そんな感じで。

  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.1

どういうソースを書いて、どうコンパイルしようとしていますか? Linux向けなど、非Windows向けに書かれたソースならば、そう簡単にはコンパイルできませんが。 Apacheなど、各環境向けに書かれたものもありますが… それならそれで正しくコンパイルする為の手順や必要とする環境(ライブラリなど)があります。 単純に「プログラミングの勉強」というのであれば、VS2010でも可能です。 入門書/入門サイトに書かれているようなコードの場合だと、それなりに設定を変更したりする必要はありますが。 UNICODEなどが考慮されていない。というパターンが多かったりするのでプロジェクトのプロパティで使用する文字コードセットを「マルチバイト文字セット」に指定してみたり、 # Windowsのプログラミング…ってことならUNICODEを考慮した書き方を覚えた方がよいのでしょうが…入門書レベルでその辺扱っているかどうか…。 scanf()とか使っている場合にセキュリティ関連で警告が表示されるのを抑制する為にdefine設定が必要だったり…などなど。 # Microsoft独自の拡張によるもの…ですけどね。

krrsa
質問者

補足

学習用の単純なものを中心に書くつもりです。 すいませんがVS2010でコンパイルする方法を教えてください

関連するQ&A

  • コンパイルについて

    プログラミング超初心者です。 今年からプログラミングの授業があるので家のパソコンでもプログラミングの出来る環境を作ってみました。 エディタソフトはVisual C++2008を使用することにしました。コンパイラソフトは学校と同じcygwinをインストールしてみました。 質問なんですがVisual C++2008でソースコードを入力し、それをcygwinでコンパイルすることは出来るのでしょうか? 理由はVisual C++2008でコンパイル出来ることは、わかってるのですが学校でcygwinを使用してるので慣れるために別々に使用したいからです。もし出来るのならばやり方を教えてもらえないでしょうか? ちなみに学校では、エディタソフトが秀丸を使用しコンパイラソフトはcygwinを使用してます。 もし他におすすめのソフトがあれば教えてもらうと助かります。よろしくお願いします。

  • WiiYourself!をコンパイルできない

    WiiYourselfをVisualStadio2008(visual C++)でDemoフォルダのソースをコンパイルしようとしたのですがコンパイルエラーが100個以上出て失敗してしまいました(ソースは入手したときのままです)。エラーは以下のとおりです。 1>c:\program files\microsoft visual studio 9.0\vc\include\excpt.h(60) : error C2065: '_In_' : 定義されていない識別子です。 1>c:\program files\microsoft visual studio 9.0\vc\include\excpt.h(60) : error C2144: 構文エラー : '_EXCEPTION_RECORD' は ')' によって先行されなければなりません。 1>c:\program files\microsoft visual studio 9.0\vc\include\excpt.h(60) : error C2448: '_except_handler' : 関数の定義が間違っています。 1>c:\program files\microsoft visual studio 9.0\vc\include\excpt.h(61) : error C2144: 構文エラー : 'void' は ';' によって先行されなければなりません。 1>c:\program files\microsoft visual studio 9.0\vc\include\excpt.h(62) : error C2144: 構文エラー : '_CONTEXT' は ';' によって先行されなければなりません。 1>c:\program files\microsoft visual studio 9.0\vc\include\excpt.h(63) : error C2144: 構文エラー : 'void' は ';' によって先行されなければなりません。 1>c:\program files\microsoft visual studio 9.0\vc\include\excpt.h(64) : error C2059: 構文エラー : ')' 1>c:\winddk\7600.16385.0\inc\api\windef.h(49) : error C2143: 構文エラー : ';' が '*' の前にありません。    ........ 開発環境は以下の通りです Windows vista WDM (インクルード(inc/api) ライブラリ(lib/wxp/i386)をvisual C++に設定している) WiiYourself1.01a とWiiYourself!_1.14b両方試しましたが同じ結果でした 原因をご存知の方がいらっしゃたらどうか書き込みお願いします。 よろしくお願いします。

  • gccでの分割コンパイルについて

    参考書に分割コンパイルの方法が書いてなかったので質問させていただきます。 現在3つのソースファイルがあります。 1.header.h (関数プロトタイプ宣言) 2.kansu.c  (関数の定義) 3.main.c  (main()関数) ここで、main.cがheader.hをincludeしています。 このときの分割コンパイルはどのようにしたら良いのでしょうか?Makefileを作成するのでしょうか? 自分自身分割コンパイルの経験はありません。 環境は Cygwinを使ってのWindows XP コンパイラはgcc もうひとつは Visual Studio.netを使っての環境です。

  • Visual Studioについて。

    こんにちは。 最近、妙にプログラミングに興味を持ち始め、VisualBasic(.NET?)でのプログラミングから勉強してゆきたいと思います。 しかし、まったくの初心者であります。 そこでなのですが、Visual Basic(.NET?)でのプログラミングは、Visual Studioで行えるのでしょうか? さらに、Visual Basicと、Visual Basic.NET があるようなのですが、どう違うのですか? VBも、VB.NETもどちらも、Visual Studio1つで できますか? そして、Visual Studioには、コンパイラは付属していますか? (よく、プログラミングしたあとに、コンパイルしてEXEファイルを作らないといけないと聞くので。) 検索エンジンで検索しても、方法が悪かったのか、よくわからなかったので、よろしくおねがいします。

  • コンパイルできない

    c言語をはじめたばかりの初心者です。"typ.c"というソースファイルをメモ帳でつくって、コマンドプロンプト上でコンパイルしようとしたのですが、うまくいきませんでした。typ.cファイルの内容は *typ.c*/ #include <stdio.h> #include <stdlib.h> /*for exit()*/ int main(void) { FILE *fin, *fout; char buf[256]; char filename1[80], filename2[80]; printf("入力ファイル名="); gets(filename1); printf("出力ファイル名="); gets(filename2); fin = fopen(filename1, "r"); if (fin == NULL){ printf("%sをオープンできません\n", filename1); exit(1); } fout = fopen(filename2, "w"); if (fout == NULL){ printf("%sをオープンできません\n", filename2); exit(1); } while (fgets(buf, 256, fin) != NULL){ fputs(buf, fout); } fclose(fin); fclose(fout); return 0; } となっています。 いざコマンドプロンプト上でコンパイルしようとすると  C:Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\stdio.h(189) : error C20 27: 認識できない型'PostAttribute'が使れています。 c:\program files\microsoft visual studio 9.0\vc\include\codeanalysis\sourceannotations.h(71) : 'PreAttribute'の宣言を確認してください。 という注意書きが大量にでてきて最後に C:Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\stdio.h(239) : fatal err or C1003: プログラム内のエラーが100個を超えました。コンパイルは中断されます。                         となってしまいます。 使っているOSはwindows vista で コンパイラはMicrosoft Visual C++ 2008 Express Edition です。 どうしたらよいのかわかりません。 どうか教えてください。 説明に不足があればまた足しますのでよろしくお願いします。

  • コンパイルについて

    こちらのサイト http://www.ohmsha.co.jp/data/link/978-4-274-20398-5/ で公開されているc++のソースファイルなのですが、 このファイルをコンパイル出来るフリーのc++のコンパイルソフトはございますか? microsoft visual c++.netで動作確認済みと記載されており、 やはりこちらでしかコンパイル出来ないのでしょうか? よろしくお願いいたします。

  • C言語のコンパイル方法(設定なども)

    今、学校でプログラミングをしています。  家でコンパイルしたいのですが..。どうやれば? 環境は  WindowsXP 使用ソフト エディタ/桜エディタ 秀丸 などです。 コンパイラ/ボーランドのやつ,,、  一応Visual c もあります。  コンパイラの方法を教えてください。 ちなみに学校は、   cl ファイル名 .c でコンパイルできます,.。 お願いします 

  • Visual C++ 2005のコンパイル方法

    Visual C++ 2005というソフトを使ってプログラミングをしているのですが、コンパイルの方法がわかりません。確か出力→デバッグ開始だっとような気がするんですが、デバッグができないのでコンパイルもできません。ちなみに元のソースは学校でLinuxでemacsを使用して作ったものなので、一からVisual C++ 2005で作ったものではありません。 回答お願いします

  • 「Microsoft Visual C++」でCやC#できますか?

    プログラミングについて初心者です。 仕事の関係でC#を勉強しないといけなくなりました。 学生時代はMATLABしかやっていないし、独学で勉強しようと思って学生時代にMicrosoft Visual C++を入れたのですが、本を見て例題にそって動かしただけであとはずっと眠っています。。 ここで質問があります。 C#を勉強するのにMicrosoft Visual C++では駄目でしょうか?(とんちんかんな質問してたらすみません。コンパイラがあればCは大丈夫って聞いてたのですが。。) あまりにもおかしい質問ならご教授願います。 C#を勉強するには、Microsoft Visual C++ではなくてVisual Studio 2005 Standard Editionの方がいいのですか?(ネットでいろいろ調べたらこれがでてきました。) もし、Visual Studio 2005 Standard Editionならいま入ってるMicrosoft Visual C++はアンインストールしてから入れたほうがいいですか? よろしくお願いします。

  • Visual C++ 6.0 で作成したプログラムをVisual C++ 2005 でコンパイルしたい

    visual C++ 6.0 で作成したプログラムがあります。このソースリストをVisual Studio 2005 Express Edition の Visual C++ 2005 Express Editionでコンパイルしようとしましたが、#include <Windows.h> でエラーになって先に進みません。対応したWindows.hの入手方法教えてください。 それとも、そもそも、Visual C++ 2005 Express Editionでは昔のVC++のプログラムはコンパイルできないのでしょうか?

専門家に質問してみよう