1 / 1 / 0
Регистрация: 24.05.2011
Сообщений: 68
|
|
1 | |
#include14.01.2012, 09:19. Показов 5992. Ответов 23
Метки нет Все метки)
(
не понимаю какие <stdio.h>,<time.h> и т.д использовать. пыталась найти их характеристики в интернете, но толкового ответа не нашла, пришлось обратиться к вам! Посоветуйте пожалуйста или какую-ниб литературу, или объясните какие #include нужно использовать в том или ином случае..потому что при написании одной и той же программы, программисты вставляют разные #include..Еще не очень понятно с #define M 3 или #define N 4-зачем они нужны?
0
|
14.01.2012, 09:19 | |
Ответы с готовыми решениями:
23
Работа с файлами в 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>? |
278 / 174 / 21
Регистрация: 10.07.2011
Сообщений: 441
|
||||||
14.01.2012, 09:34 | 2 | |||||
tanya2505, простой и быстрый способ понять какой inculde использовать это пойти СЮДА там в окошке поиска написать то что вы хотите использовать. например getline или cout. Среди того что вам будет предложено в качестве найденых результатов кликните там где написано ваше искомое слово и C++ Reference и вам будет предложена страница с примером и описанием. в примере будет include-ы которые вам нужны.
это объявление констант. пример:
2
|
1 / 1 / 0
Регистрация: 24.05.2011
Сообщений: 68
|
|
14.01.2012, 09:56 [ТС] | 3 |
0
|
1 / 1 / 0
Регистрация: 24.05.2011
Сообщений: 68
|
|
14.01.2012, 09:58 [ТС] | 4 |
0
|
186 / 186 / 21
Регистрация: 08.01.2011
Сообщений: 1,139
|
||||||
14.01.2012, 10:43 | 5 | |||||
Потому что это макросы, а не код. Макросы подставляются, а не выполняются.
0
|
1 / 1 / 0
Регистрация: 24.05.2011
Сообщений: 68
|
|
14.01.2012, 10:53 [ТС] | 6 |
Chelioss, то есть это просто замена переменных слева на те что справа??
0
|
1 / 1 / 0
Регистрация: 24.05.2011
Сообщений: 68
|
|
14.01.2012, 11:08 [ТС] | 8 |
а с #include-ами мне что делать? как разобраться, ведь, как я понимаю, для разных команд разные инклуды включать?
0
|
![]() 3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
|
|
14.01.2012, 11:11 | 9 |
tanya2505, ну они тоже заменяются.
Разные функция объявлены в разных заголовках. По сути можно их не помнить (например на экзамене), но сами эти функция помнить необходимо обязательно. Зная функцию, найти заголовок в котором она объявлена не составит и труда. ![]()
0
|
186 / 186 / 21
Регистрация: 08.01.2011
Сообщений: 1,139
|
|
14.01.2012, 11:12 | 10 |
Дык чтобы запомнить что-то для чего подключить, надо практиковаться. Вот взять и выучить все библиотеки вряд ли возможно. Да и не зачем.
Практикуйтесь и не будете таких вопросов задавать.
0
|
1 / 1 / 0
Регистрация: 24.05.2011
Сообщений: 68
|
|
14.01.2012, 11:28 [ТС] | 11 |
Chelioss, мне бы хотя бы основное-для основных командююпро массивы там, или когда сумму вычисляешь
0
|
![]() |
|||||||||||||||||||||||||||||||||||||||||
14.01.2012, 11:30 | 12 | ||||||||||||||||||||||||||||||||||||||||
![]() Вот так, например.
С++ Builder: как ускорить компиляцию с помощью предкомпилированных заголовков Автор: Серебров Борис Вместо вступления сразу приведу пример. Полная сборка (build) проекта, содержащего около 170 cpp-модулей, при использовании предкомпилированных заголовков происходит за 811 секунд, при этом число обработанных компилятором строк составляет 1,808,780. При компиляции того же проекта без использования предкомпилированных заголовков, время сборки составляет 2399 секунд, а число строк, обработанных компилятором - 45,261,820. Впечатляет, не так ли? Плата за это ускорение, в принципе не велика - предкомпилированный образ, размер которого около 40 Мб.Источник: www.people.overclockers.ru При компиляции исходных текстов, компилятор должен обработать все *.cpp файлы проекта и все включенные в них *.h - файлы. При этом обрабатываются как пользовательские заголовочные файлы, так и стандартные, такие как vcl.h или Word2k.h. Количество кода, находящегося в стандартных заголовках может быть очень большим, например размер файла Word2k.h превышает 5 Мб, в нем больше 130 000 строк кода. Так как содержимое стандартных заголовков не изменяется, то их компиляция при каждой сборке проекта является напрасной тратой времени. Предкомпилированные заголовки помогают решить эту проблему - стандартные файлы компилируются один раз, а затем используется скомпилированный двоичный образ. Принцип действия предкомпилированных заголовков Для управления предкомпилированными предназначена директива компилятора #pragma hdrstop. Все заголовочные файлы, включенные до этой директивы, помещаются в один образ, например:
Таким образом, для повторного использования предкомпилированного заголовка необходимо выполнение двух условий: состав включенный файлов до директивы hdrstop должен быть тем же последовательность включения файлов до директивы hdrstop должна быть той же Сократить затраты на компиляцию стандартных заголовков до минимума можно только в том случае, если скомпилировать один образ, содержащий все стандартные заголовки, необходимые для проекта. Для этого нужно, чтобы: ВСЕ cpp-файлы проекта имели одинаковый блок включений до директивы hdrstop в этот блок должны входить ВСЕ стандартные заголовочные файлы, необходимые для проекта Выполнить эти условия достаточно просто, для этого в начало каждого cpp-файла необходимо поместить следующие строки:
Кстати, С++ Builder при добавлении новых модулей в проект реализует описанную стратегию управления предкомпилированными заголовками. Например, при создании нового приложения, файл Unit1.cpp будет таким:
Управлять составом включаемых в vcl.h заголовков можно с помощью специальных символов (INC_VCLDB_HEADERS, INC_VCLEXT_HEADERS и др.). В моей версии pch.h эти символы определяются с помощью #define до включения vcl.h, что приводит к увеличению числа включаемых файлов. Как в существующем проекте перейти к использованию предкомпилированных заголовков Даже в большом проекте перейти к использованию предкомпилированных заголовков достаточно просто. В свойствах проекта нужно включить кэширование предкомпилированных заголовков и рекомендуется указать "персональный" файл, в котором будет храниться образ предкомпилированных заголовков: Project - Options - закладка Compiler, группа "Pre-compiled headers". Тут должно быть выбрано "Cache pre-compiled headers", а в поле "File Name" нужно ввести "pch.csm". При такой настройке образ с предкомпилированными заголовками будет находится в папке с проектом, в файле pch.csm. После этого в начало каждого cpp-модуля необходимо вставить 2 строки:
В принципе, при использовании pch.h, техническая потребность во включении стандартных заголовков исчезает. Однако, полезно все же указывать все необходимые для каждого конкретного модуля заголовки ниже директивы #pragma hdrstop. Во-первых, это в некоторой степени документирует модуль - по включаемым файлам можно судить, какими возможностями пользуется этот модуль. Во-вторых, это облегчает повторное использование модуля в других проектах, в которых либо не используется pch.h, либо его содержимое может быть другим. Теоретически можно еще больше повысить эффективность компиляции, если включить в pch.h не только стандартные, но и все пользовательские заголовочные файлы. Практически, так как пользовательские заголовки меняются достаточно часто, это может повлечь за собой частую перекомпиляцию pch.h, что негативно скажется на времени компиляции. Кроме того, пользовательские заголовки обычно не бывают очень большими и компилируются очень быстро. Поэтому включать их pch.h не целесообразно. Как проверить, что предкомпилированные заголовки используются эффективно При добавлении в проект новых файлов нужно не забывать включать в них pch.h, иначе для них не будет использован общий предкомпилированный образ. Такая же ситуация может возникнуть, если в каком-то модуле включаются стандартные заголовки, которые не вошли в pch.h. Для того, чтобы отследить такие файлы, есть несколько способов: визуальное наблюдение за процессом компиляции. Обычно, число строк компилируемых в одном файле не должно превышать 10000-15000 строк если для проекта выбран индивидуальный файл для хранения образа предкомпилированных заголовков и этот файл называется pch.csm, то нужно обратить внимание на наличие вспомогательных файлов с именами pch.#00, pch.#01 и т.д. Если для всех файлов проекта используется один и тот же предкомпилированный образ, то вспомогательный файл должен быть только один - pch.#00. Если таких файлов больше, это значит что для каких-то cpp-модулей создаются дополнительные образы. Текст pch.h
0
|
1 / 1 / 0
Регистрация: 13.01.2012
Сообщений: 25
|
||||||
14.01.2012, 11:33 | 13 | |||||
почитай Л.Б Бузюкова О.Б Петрова "Современные методы программирования на я зыках С/С++"
там припрохождении какой-либо темы говорят какой нужно использовать заголовочный файл в директиве include Добавлено через 2 минуты
0
|
186 / 186 / 21
Регистрация: 08.01.2011
Сообщений: 1,139
|
|
14.01.2012, 11:40 | 14 |
табаков
Ну это вообще-то в каждой книге говорят. Нет основных. Используете cout,cin,cerr,clog? <iostream> <ostream><istream> Используете файловые потоки: <fstream><ofstream><ifstream> Используете vector<>: <vector><algorithm> Используете list<> : <list> и т.д. Читаете книгу, запоминаете что для чего подключать. Добавлено через 1 минуту Вы это советуете тем, кто не знает стандартные хедеры?
0
|
1 / 1 / 0
Регистрация: 24.05.2011
Сообщений: 68
|
|
14.01.2012, 11:42 [ТС] | 15 |
дело в том, что если я чего лишнего напишу на экзамене, меня обязательно спросят, что это..и я вряд-ли смогу ответить)
0
|
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
|
|
14.01.2012, 11:54 | 17 |
В вижуал студии если вы что-то использовали но не знаете, в каком это что-то инклуде, можно это выделить, правой мышкой кликнуть и перейти в инклуд нажам Go To Defenition. В других средах тоже должна быть такая фича. Со временем эти инклуды запоминаются. Но все запомнить все равно не получится. Если ваши экзаменаторы это не понимают, то вам можно только посочувствовать.
0
|
186 / 186 / 21
Регистрация: 08.01.2011
Сообщений: 1,139
|
|
14.01.2012, 11:57 | 18 |
Все существующие хедеры в мире что ли подключать?
Добавлено через 2 минуты Ну как давайте перечислите все стандартные хедеры, которые подключив, всегда все стандартное будет работать.
0
|
![]() |
||||||
14.01.2012, 12:03 | 19 | |||||
Наиболее употребительных на первых порах будет достаточно. Там, в статье примерчик имеется.
Хотя, это было бы весьма удобно ![]()
0
|
186 / 186 / 21
Регистрация: 08.01.2011
Сообщений: 1,139
|
|
14.01.2012, 12:05 | 20 |
Извините, но вы чушь пишите. Не знать какие хедеры подключать, тогда какой смысл учить язык?
0
|
14.01.2012, 12:05 | |
Помогаю со студенческими работами здесь
20
Не находит #include<iomanip.h> #include<conio.h>
#include в C++ INCLUDE Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
![]() |
Новые блоги и статьи
![]() |
||||
Winforstrap или красявый дизайн своими руками на HTML+JS+Winforms
anomal6 04.03.2025
Сидел тут вечером ковырял проект на MAUI, и как же глупо создаются пакеты MSIX и система обновлений пакета публикации, но не об этом.
Бывает нужен современный дизайн программы а писать на MAUI,. . .
|
Формат данных для симуляции физики, посредством распространённых не обученных моделей.
Hrethgir 04.03.2025
Что-то как-то снова потерялось, зато катангенсы закатангесились в одном сообщении. На днях писал, что планирую для работы апгрейдить (на этот раз удачно) девайс для работы (конкретно - здоровья для,. . .
|
Концепция variadic
CoderHuligan 04.03.2025
Мне не очень нравится (а кому это нравится?) что у нас есть отдельно компилятор, отдельно линковщик, причем со своим собственным командным языком. При этом усложнении надо знать помимо языка. . .
|
Java Record или Kotlin Data Class: что лучше для неизменяемых данных
Wired 04.03.2025
Java Record и Kotlin Data Class — два мощных инструмента для обуздания неизменяемых структур данных, каждый со своим уникальным подходом к решению этой задачи. История их появления весьма. . .
|
Создание производительных API с Java и gRPC
Wired 04.03.2025
В мире микросервисной разработки вопрос производительности часто становится краеугольным камнем. И хотя REST API давно завоевал сердца разработчиков своей простотой и интуитивностью, при высоких. . .
|
Что нового в JDK 24
Wired 04.03.2025
JDK 24 — это настоящий прорыв в эволюции Java, который кардинально меняет правила игры. В этом релизе разработчики Oracle наконец-то довели до ума множество критически важных улучшений в. . .
|
Разработка блокчейн с использованием Java: смарт-контракты и dApp
Wired 04.03.2025
Погружаясь в мир блокчейн-разработки на Java, разработчик получает доступ к внушительному арсеналу инструментов. В отличие от Solidity, который "заперт" в экосистеме Ethereum, Java предоставляет. . .
|
WebAssembly в Kubernetes
stackOverflow 03.03.2025
В современной экосистеме облачных технологий WebAssembly (Wasm) становится все более значимым компонентом, предлагая уникальный подход к выполнению кода в распределенных системах. Эта технология. . .
|
GitHub Actions или Jenkins: Выбираем CI/CD платформу
stackOverflow 03.03.2025
Непрерывная интеграция и развертывание (CI/ CD) изменили подход к разработке программного обеспечения, превратив его в бесшовный процесс от написания кода до развертывания в продакшн. GitHub Actions и. . .
|
Автоматизация тестирования Pull Request в Kubernetes: Интеграция с GitHub Actions и GKE
stackOverflow 03.03.2025
Масштабные проекты с использованием Kubernetes требуют надежной системы тестирования изменений перед их внедрением в продакшн-среду. Традиционный подход с ручной проверкой Pull Request не справляется. . .
|