Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.02.2010, 15:03   #1
zhenya.ya
Форумчанин
 
Регистрация: 29.11.2009
Сообщений: 142
Сообщение Связывание 2-ух файлов

Программа состоит из 2-ух частей( гравная (chice.cpp) i my_project.cpp, которую я задойствую в главной )
(Пользуюсь VC 2008) Из-за чего у меня ошибки(в частности, с библиотекой stdafx.h)?

first part(main):
Код:
#include "stdafx.h"
#include <stdio.h>
#include "My_project.cpp"
extern int kol_domov;
int main(){
	auto char c;
	//int c=1;
	void ENTER();
	int read();
	void print();
	void sort();
		printf("Select search field\n1:Enter any inform.\n2:Read information\n0:Exit\n");
	
		scanf("%i",&c);
			switch(c)
{
			case '1':ENTER();
				break;
			case '2': read();
				break;
			case '3': return 0;
				break;
			default: printf("Error~!");
			}
			
}
second part:
Код:
#include "stdafx.h"
#include <stdio.h>
int kol_domov;

struct fond{
	char adr[50];
	int number;
	int number_of_the_contract;
};

static fond list[20],temp[20];
extern void ENTER()
{
	register int a;
	printf(" Kak mnogo domov?!:\n");
	scanf("%i",&kol_domov);
	for(a=0;a<kol_domov;a++){
		printf("Enter adress:\n");
		scanf("%s",&list[a].adr);
		printf("Enter number of house:\n");
		scanf("%i",&list[a].number);
		printf("Vvedite number of the contact:\n");
			scanf("%i",list[a].number_of_the_contract);
	}
	printf("\n");
}
	extern void print(){
		register int a;
		printf("\n");
		printf("# adress number number_of_the_contact");
		printf("******************************************");
		for(a=0;a<kol_domov;a++){
			printf("%d%10s%18d%16d",a,list[a].adr,list[a].number,list[a].number_of_the_contract);

			printf("\n");}
	}
	extern int read(){
			register int a;
			printf("Enter number of the contact: ");
			auto int choice;
			scanf("%i",&choice);
			for(a=0;a<kol_domov;a++);
			{
				if(choice==list[a].number_of_the_contract){
printf("# adress number number_of_the_contact");
		printf("******************************************");
		for(a=0;a<kol_domov;a++){
			printf("%d%10s%18d%16d",a,list[a].adr,list[a].number,list[a].number_of_the_contract);
printf("\n");
}
				}
				else printf("Have not find");
				
			}
			return 0;
	}
			extern void sort(){
				register int a,b;
				
				printf("first list");
print();
for(a=1;a<kol_domov;a++) 
for(b=kol_domov-1;b>=a;b--)
{
	
if(list[b-1].number_of_the_contract>list[b].number_of_the_contract)
{
	temp[b]=list[b-1];
list[b-1]=list[b];
list[b]=temp[b];
}
printf("New\n");
print();
}}
zhenya.ya вне форума Ответить с цитированием
Старый 20.02.2010, 16:56   #2
liljon
Форумчанин
 
Регистрация: 03.01.2010
Сообщений: 229
По умолчанию

какие ошибки?
stdafx.h это Precompiled header. если в проекте отключен - включите. Или уберите из кода
подпись
liljon вне форума Ответить с цитированием
Старый 20.02.2010, 17:32   #3
zhenya.ya
Форумчанин
 
Регистрация: 29.11.2009
Сообщений: 142
По умолчанию

ошибки:

1>My_project.obj : error LNK2005: "void __cdecl ENTER(void)" (?ENTER@@YAXXZ) уже определен в choice.obj
1>My_project.obj : error LNK2005: "void __cdecl print(void)" (?print@@YAXXZ) уже определен в choice.obj
1>My_project.obj : error LNK2005: "int __cdecl read(void)" (?read@@YAHXZ) уже определен в choice.obj
1>My_project.obj : error LNK2005: "void __cdecl sort(void)" (?sort@@YAXXZ) уже определен в choice.obj
1>My_project.obj : error LNK2005: "int kol_domov" (?kol_domov@@3HA) уже определен в choice.obj
1>LINK : warning LNK4067: неоднозначная точка входа; выбрана "mainCRTStartup"
1>C:\Documents and Settings\Admin\Мои документы\Visual Studio 2008\Projects\example\Debug\example .exe : fatal error LNK1169: обнаружен многократно определенный символ - один или более
zhenya.ya вне форума Ответить с цитированием
Старый 20.02.2010, 18:24   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,711
По умолчанию

если вы уже подключаете "My_project.cpp", то в нем stdafx.h точно не нужен
p51x вне форума Ответить с цитированием
Старый 20.02.2010, 19:01   #5
zhenya.ya
Форумчанин
 
Регистрация: 29.11.2009
Сообщений: 142
По умолчанию

сделал, но вот на что оно терь жалуется:

1>c:\documents and settings\admin\мои документы\visual studio 2008\projects\example\example\my_pr oject.cpp(75) : fatal error C1010: непредвиденный конец файла во время поиска предкомпилированного заголовка. Возможно, вы забыли добавить директиву "#include "stdafx.h"" в источник.
zhenya.ya вне форума Ответить с цитированием
Старый 20.02.2010, 19:08   #6
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,711
По умолчанию

если вы уже подключаете "My_project.cpp", то убирайте его из самостоятельно компилируемых единиц.
p51x вне форума Ответить с цитированием
Старый 20.02.2010, 19:21   #7
zhenya.ya
Форумчанин
 
Регистрация: 29.11.2009
Сообщений: 142
По умолчанию

если не секрет, то каким образом это можно осуществить?
zhenya.ya вне форума Ответить с цитированием
Старый 20.02.2010, 20:09   #8
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,711
По умолчанию

1. Удалите его из проекта.
2. В студии выбирете свойства его и там выберете в меню.
p51x вне форума Ответить с цитированием
Старый 21.02.2010, 21:36   #9
zhenya.ya
Форумчанин
 
Регистрация: 29.11.2009
Сообщений: 142
По умолчанию

Исключил его из проекта;
Но места, где можно убрать его из самостоятельно комп. единиц, отыскать я не смог.
Не могли бы ли Вы поточнее описать пункт 2(где же эти св-ва)?
zhenya.ya вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Связывание с внешней БД voam Microsoft Office Access 11 30.12.2009 18:25
Позднее связывание _Art_ Общие вопросы C/C++ 1 19.12.2009 12:53
связывание таблиц vaso1983 БД в Delphi 0 17.05.2009 21:33
Связывание файлов по расширению Ratmir_1 Общие вопросы Delphi 5 13.11.2008 18:33