C++error

1、fatal error C1010: unexpected end of file while looking for precompile head

致命错误C1010:在寻找预编译指示头文件时,文件未预期结束。
  就是没有找到预编译指示信息的头文件。
  问题一般发生在:通过添加文件的方式,添加了一些cpp文件到一个MFC的程序,但该cpp文件并不是MFC,而是标准的C++。 
  解决方案1: 右键单击项目工程中的cpp文件,在菜单Project->Settings->C/C++->Precompile Header,设置为第一项:Not using precompile headers。
  解决方案2:在.cpp文件开头添加包含文件stdafx.h。 #include"stdafx.h"

------------------------------------------------------------------------------------------------------

2、fatal error C1083: Cannot open precompiled header file: 'Debug/search.pch': No such file or directory

有些时候你把这个空间保存了。然后关闭空间,再打开这个工作空间,就ok了。(有些时候!)

------------------------------------------------------------------------------------------------------

3、d:\workspace\c++\search\sequence.cpp(24) : fatal error C1010: unexpected end of file while looking for precompiled header directive

------------------------------------------------------------------------------------------------------

4、cannot compile the file '' no compile tool is association with the file  extension

你现在打开的是头文件,头文件是不能单独编译的,打开你写代码的.cpp文件,就可以编译了。

------------------------------------------------------------------------------------------------------

5、search.obj : error LNK2001: unresolved external symbol "void __cdecl sequence::showresult(int *,int,int,int)" (?showresult@sequence@@YAXPAHHHH@Z)
search.obj : error LNK2001: unresolved external symbol "int __cdecl sequence::search(int *,int,int)" (?search@sequence@@YAHPAHHH@Z)

------------------------------------------------------------------------------------------------------


弄了一个小时,才弄完一个C++示例小程序,泪奔中。。。

解决了上面一些问题,有的问题是关了又开就完成了,实在是令人费解啊。

虽然没什么含量,但也是多年后,重拾C++的第一个程序,贴上来,纪念一下



sequence,h:

#ifndef SEQUENCE_H
#define SEQUENCE_H

namespace sequence{
	
	/**
	根据数组首地址、 数组长度、关键字查找,返回索引
	*/
	int search(int *arr,int arrlen,int key);

	/**
	显示结果
	*/
	void showresult(int *arr,int arrlen,int key,int index);

}

#endif

sequence.cpp:

#include <iostream>
#include "sequence.h"
using std::cout;
using std::endl;

/**
根据数组首地址、 数组长度、关键字查找,返回索引
*/
int sequence::search(int *arr,int arrlen,int key){
	for(int i = 0 ; i < arrlen ; i++){
		if(key == arr[i]){
			return i;
		}
	}
	return -1;
}

/**
显示结果
*/
void sequence::showresult(int *arr,int arrlen,int key,int index){
	cout<<"-------------顺序查找演示-------------"<<endl;
	cout<<"元素"<<key<<"在数组{";
	for(int i = 0;i < arrlen;i++){
		cout<<arr[i]<<" ";
	}
	cout<<"}中的位置为"<<index<<endl;
}

main:

// search.cpp : Defines the entry point for the console application.
//

#include "sequence.h"

int main(int argc, char* argv[])
{
	//1,顺序查找算法

	const int aN = 10;
	int a[aN] = {2,3,4,7,1,9,3,6,7,8};
	int akey = 9;
	int aindex = sequence::search(a,aN,akey);
	sequence::showresult(a,aN,akey,aindex);


	//2,二分查找算法
	//3,分块查找算法
	//4,二叉排序树上的查找
	//5,哈希查找
	return 0;
}

结果:

-------------顺序查找演示-------------
元素9在数组{2 3 4 7 1 9 3 6 7 8 }中的位置为5
Press any key to continue



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值