2012-02-15 18 views
0

私はC++を始めました。私は電子ブックを読んでいます。私は本からのコードをコピーして、Visual C++にプリコンパイルされたヘッダ付きの新しいプロジェクトw32コンソールアプリケーションの下に置いた。まあ、私はプリプロセッサディレクティブの行でiostreamを使用すると、私は周りを検索し、なぜiostreamがうまくいかないのか理解できません。Visual C++はiostreamを許可していません

 
1>------ Build started: Project: dd, Configuration: Debug Win32 ------ 
1> stdafx.cpp 1> dd.cpp 1>c:\documents and settings\leon\my documents\visual studio 2010\projects\dd\dd\dd.cpp(24): fatal error 
C1010: unexpected end of file while looking for precompiled header. 
Did you forget to add '#include "StdAfx.h"' to your source? 
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== 
1 // This program calculates the user's pay. 
    2 #include <iostream> 
    3 using namespace std; 
    4 
    5 int main() 
    6 { 
    7 double hours, rate, pay; 
    8 
    9 // Get the number of hours worked. 
    10 cout << "How many hours did you work? "; 
    11 cin >> hours; 
    12 
    13 // Get the hourly pay rate. 
    14 cout << "How much do you get paid per hour? "; 
    15 cin >> rate; 
    16 
    17 // Calculate the pay. 
    18 pay = hours * rate; 
    19 
    20 // Display the pay. 
    21 cout << "You have earned $" << pay << endl; 
    22 return 0; 
    23 } 

答えて

2

それは理由iostreamではないのですが、あなたはstdafx.hを含めるのを忘れているので。

エラーは明らかです。プリコンパイルヘッダーを使用してプロジェクトをビルドする場合は、実装ファイルの先頭にstdafx.hを含める必要があります。

+0

ok。それは私の上にそれがうそをつくようになった。 – user1211008

2

Visual C++では、プロジェクトは「プリコンパイル済みヘッダー」と呼ばれるものを使用できます。これはプロジェクトのスピードアップに役立つテクニックです。これを動作させるには、ソースファイルで最初に行うこととして#includeファイル "stdafx.h"が必要です。

だから、iostreamを含める前に、次の行を追加します。

#include "stdafx.h" 

再度構築する場合、それは動作するはずです。

+0

私はちょうどそれをして、今私は機能のヘッダーが不足しています。 – user1211008

+0

@ user1211008 iostreamを含める前に新しい行を追加しましたか?ソースファイル内の最初の非コメント行でなければなりません。また、ソリューションを再構築することもできます。 –

+0

私はそれを見つけました。間違った; after int main() – user1211008

1

必要がありますあなたが新しいプロジェクトを作成すると、新しいCPPファイルを作成し、「空のプロジェクト」を選択し、代わりに「W32コンソールアプリケーション」を選択するので..

#include "stdafx.h" 
+0

kはそのtyを助けました – user1211008

-1

を次のヘッダーを含めて、コード作業!

+0

それで今 – user1211008

+0

私はそれをして、今私はソースコードをデバッグした後、指定されたファイルhours.exeを見つけることができません。 – user1211008

+0

私はそれがなぜ言っているのか理解していますが、あなたがデバッグすると.exeを作成すると思いましたか? – user1211008

0

はこれを試してみてください:

#include "stdafx.h" 
#include "iostream"  

(拡張子.hを削除 - VS2010は、そのファイルの拡張子を持つヘッダファイルを見つけられないようですか)?

関連する問題