БТР - мой друг
333 / 277 / 47
Регистрация: 07.01.2010
Сообщений: 1,932
|
||||||
1 | ||||||
include и некоторые мелочи07.01.2011, 15:36. Показов 7046. Ответов 74
Метки нет (Все метки)
Вот код моей первой программы на C++:
c:\documents and settings\admin\мои документы\visual studio projects\hello world\hello world.cpp(14): fatal error C1010: unexpected end of file while looking for precompiled header directive И ещё такие вопросы возникли: 1. В папке resource files находятся файлы, которые используются как ресурсы - звуки, картинки и т. д. и т. п., в папке source - исходный код, а в папке header files что находится? Как я понял, так только .h файлы, но что они в себе несут? Функции? Или может только их можно подключить с помощью директивы include? 2. Чем отличается формат .cc от .cpp? 3. В каком порядке выполняются исходные файлы и файлы ресурсов, если их несколько? Я вообще так всё представляю - вначале загружаются ресурсы, потом header files, а после уже начинает выполняться код. Я правильно мыслю? 4. <iostream> и <conio.h>. Это стандартные файлы ведь? То есть их создавать не нужно, они уже в самом ядре C++ есть? То, что <iostream> есть, это понятно - он без расширения, то есть "особый" файл, а насчёт conio.h сомневаюсь - он ведь с расширением Как-то это странно - стандартный файл с расширением... 5. Зачем в проекте создавать под-проекты? Вроде всё Извините, если много вопросов, просто новичок
0
|
07.01.2011, 15:36 | |
Ответы с готовыми решениями:
74
Подскажите, в тесте некоторые мелочи Работа с файлами в C# с исп. библиотек #include <stdio.h> #include <stdlib.h> #include <math.h> #include <io.h> #include<iostream>// подключение библиотек #include <conio.h> #include <climits> Чем отличается #include <cstring>, #include <string> и #include <string.h>? |
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
|
||||||
07.01.2011, 15:53 | 2 | |||||
1. Заголовочный файл - файл, содержащий определения типов данных, структуры, прототипы функций, перечисления, макросы препроцессора.
Заголовочный файл в общем случае может содержать любые конструкции языка программирования, но на практике исполняемый код (за исключением inline-функций в C++) в заголовочные файлы не помещают. Например, идентификаторы, которые должны быть объявлены более чем в одном файле, удобно описать в заголовочном файле, а затем его подключать по мере надобности 2. .cc - это язык C, а .cpp -С++ 4. <iostream> - заголовочный файл с классами, функциями и переменными для организации ввода-вывода в языке программирования C++. Он включён в стандартную библиотеку C++. <conio.h> - это такой майкрософтовский велосипед, который непонятно зачем вообще нужен и что с ним делать, но именно в нем валяется _getch(); Функция _getch() используется как команда паузы (чтоб экран не тух после выполнения программы). Но если используется библиотека iostream(она у тебя включена), то паузу можно сделать и cin.get(); Чтобы убрать ошибку нужно: 1)Поместить в самое начало .cpp файла #include "stdafx.h" Код такой:
1
|
38 / 38 / 17
Регистрация: 15.12.2010
Сообщений: 110
|
|
07.01.2011, 15:57 | 3 |
мой те совет выкинь студию подальше, если пишеш простенькие консольники то среде возьми по проше и по легче...там к примеру devc++ или codeblocks или еще че нить...
4. <iostream> и <conio.h>. Это стандартные файлы ведь?.... <conio.h> эт сишная, для _getch() у с++ есть cin.get(); для которой достаточно <iostream> подключить))
0
|
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
|
||||||
07.01.2011, 16:01 | 4 | |||||
Имхо пускай парень привыкает к VS ибо например в DEV-C++ нет такого:
(один из примеров)
1
|
21 / 21 / 0
Регистрация: 18.01.2010
Сообщений: 41
|
|
07.01.2011, 16:09 | 5 |
А студию выкидывать не надо, плохой совет!
Добавлено через 2 минуты В conio.h к примеру есть kbhit - проверка ввода с клавиатуры, нужная штука!
0
|
38 / 38 / 17
Регистрация: 15.12.2010
Сообщений: 110
|
|
07.01.2011, 16:14 | 6 |
читайте текст внимательно---"выкинь студию подальше, если пишеш простенькие консольники "
1
|
БТР - мой друг
333 / 277 / 47
Регистрация: 07.01.2010
Сообщений: 1,932
|
||||||
07.01.2011, 16:17 [ТС] | 7 | |||||
Всем большое спасибо! Многое прояснилось. Но
1. Значит, .cpp файлы подключать нельзя, да? 2. А каким образом строчка #include "stdafx.h" поможет? И почему название в кавычках, а не в < > ? 3. По поводу оператора << - это что знак присвоения? о_О Я прочитал, что то, что справа подставляется в левую часть, знач присвоение, но каким образом тогда присвоение переменной cout строки выводит её на экран? о_О Здесь явно что-то нечисто. 4. А можно сказать так:
5. И что означает using namespace std;? Добавлено через 36 секунд robober, учту, спасибо
0
|
Freelance
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
|
|
07.01.2011, 16:19 | 8 |
Hagrael, На все твои вопросы ответит любая книжка по С++ для начинающих.
0
|
21 / 21 / 0
Регистрация: 18.01.2010
Сообщений: 41
|
|
07.01.2011, 16:28 | 9 |
<< - в твоем случае вывод, а cout - поток куда выводить или побитовый сдвиг влево
Добавлено через 3 минуты using namespace std; - использования стандартизации имен, без него пришлось бы делать так: std::cout << "БлаБлаБла"; А вообще ты можешь использовать свое пространство имен, но пока об этом не думай: using namespace myNamespace;
1
|
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
|
|
07.01.2011, 16:28 | 10 |
Не по теме: От спасибо бы не отказался в сообщениях :-[ 1. Вообще то наоборот 2. Обычно в stdafx.h укладываются общие для всех файлов .cpp "ресурсы". 3. В книжке 4. Нет (аттач) 5. using namespace std; строка нужна для того, чтоб не писать std::cout, std::cin и т.п., а просто cout, cin... И вообще начни с чтения книжки )
1
|
21 / 21 / 0
Регистрация: 18.01.2010
Сообщений: 41
|
|
07.01.2011, 16:29 | 11 |
как-то некорректно получилось:
"<<" - вот это побитовый сдвиг влево
1
|
БТР - мой друг
333 / 277 / 47
Регистрация: 07.01.2010
Сообщений: 1,932
|
|
07.01.2011, 17:05 [ТС] | 12 |
TBIKC,
1. Я так понял, что кавычки там потому, что этот header file не стандартный. Так? 2. Понял. 3. Вот это как раз не понял, но ладно, постараюсь разобраться. 4. То есть можно писать вообще без return? o_O Это как я читал нужно для отладки. Знач, необязательно, так? 5. А std - это класс что ли? И что всё-всё входит в этот класс? о_О Ещё раз спасибо за ответы
0
|
07.01.2011, 17:10 | 13 |
Hagrael, почитай разделы 1, 2 и 10 по ссылке Препроцессорные директивы в C/C++ (#include, #define и прочее)
0
|
БТР - мой друг
333 / 277 / 47
Регистрация: 07.01.2010
Сообщений: 1,932
|
|
07.01.2011, 17:46 [ТС] | 15 |
TBIKC, что значит "наоборот"? И значит можно подключать даже .cpp файл (конечно же это бессмысленно), а так же из .h-файла можно подключать другие .h-файлы.
0
|
БТР - мой друг
333 / 277 / 47
Регистрация: 07.01.2010
Сообщений: 1,932
|
|
07.01.2011, 18:22 [ТС] | 17 |
Evg, и появится скорее всего тоже Но однако я читаю.
0
|
1179 / 989 / 83
Регистрация: 29.10.2009
Сообщений: 1,385
|
|
07.01.2011, 20:05 | 18 |
Можно! И иногда в этом даже есть смысл!
Правда, применяется некая простая техника, чтоб исключить рекурсивные вызовы (а значит - бесконечно зацикливающиеся) подключения.
1
|
БТР - мой друг
333 / 277 / 47
Регистрация: 07.01.2010
Сообщений: 1,932
|
||||||
08.01.2011, 09:08 [ТС] | 19 | |||||
Day, понятно.
Evg, там про кавычки и угловые скобки не написано. Насколько я понял, в кавычках пишешь путь к файлу, созданному программистом, а к файлам из стандартной библиотеки путь пишется в угловых скобках, так? Но такой вопрос - почему <conio.h> пишется с .h, а <iostream> просто так? Логичнее было бы сделать все файлы из стандартной библиотеки без расширения Добавлено через 56 минут И ещё такой вопрос - такой код правильный?
0
|
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
08.01.2011, 09:28 | 20 |
Hagrael, имена файлов, которые пишутся в угловых скобках, ищутся по стандартным путям, о которых известно компилятору, а имена, записанные в кавычках, ищутся только в папке, в которой находится данный исходник. По сути, можно и имена самописных хидеров писать в угловых скобках, это может прокатить, но лучше придерживаться стандартов.
И чего вы так зациклились на этом расширении? И iostream и прочие плюсовые хидеры раньше имели расширение .h, потом, после выхода стандарта его убрали, ввели пространства имён и т.д. А все сишные хидеры (включая conio) - это древние файлы, да к тому же предназначенные для си-программ, потому в них и оставили расширения. На счёт кода, а почему бы не проверить самостоятельно, зачем спрашивать на форуме, чему равно дважды два, не удосужившись запустить калькулятор?
0
|
08.01.2011, 09:28 | |
08.01.2011, 09:28 | |
Помогаю со студенческими работами здесь
20
Warning: include(1) [function.include]: failed to open stream: No such file or directory in Warning: include(templates.php) [function.include]: failed to open stream: No such file or directory В чем суть директив #include <Windows.h> #include <stdlib.h> Warning: include(Z:/home/localhost/www/layout/header.php) [function.include]: failed to open stream: No such f Не находит #include<iomanip.h> #include<conio.h> Мелочи... Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |