|
0 / 0 / 0
Регистрация: 28.09.2012
Сообщений: 20
|
|||||||||||
Разделение кода по файлам29.12.2012, 20:11. Показов 1374. Ответов 11
Метки нет (Все метки)
Собственно, вопрос в следующем. В программе нужен глобальный (видимый из нескольких .с файлов) массив структур. Я его выношу в заголовок следующего вида:
0
|
|||||||||||
| 29.12.2012, 20:11 | |
|
Ответы с готовыми решениями:
11
Разделение кода на несколько файлов Разделение С кода на несколько файлов Разделение кода программы на файлы |
|
0 / 0 / 0
Регистрация: 28.09.2012
Сообщений: 20
|
||||||
| 29.12.2012, 23:55 [ТС] | ||||||
|
Extern показывает, что переменная была уже объявлена в другом файле, я правильно понимаю? Не помогло. Если я в .с-файлах пишу
0
|
||||||
|
Неэпический
|
|||||||||||||||||
| 30.12.2012, 06:54 | |||||||||||||||||
|
Как пример: main.cpp
0
|
|||||||||||||||||
|
0 / 0 / 0
Регистрация: 28.09.2012
Сообщений: 20
|
||||||
| 31.12.2012, 01:08 [ТС] | ||||||
|
Вроде бы врубился, спасибо. Вот так работает:
0
|
||||||
|
Неэпический
|
|
| 31.12.2012, 01:18 | |
|
Ну если в заголовке прототипы функций, то все в порядке. Если же там реализация этих функций, то все файлы, которые включают данный заголовок будут вклчать реализацию и линковщик выдаст ошибку. Вы это имели ввиду?
0
|
|
|
0 / 0 / 0
Регистрация: 28.09.2012
Сообщений: 20
|
|
| 31.12.2012, 01:53 [ТС] | |
|
Примерно. Про то, что линкер возмутится при таком включении, я уже понял. Я имею в виду, подключать файлы с внешними функциями правильно через заголовки с прототипами, так? То есть будут формироваться пары типа file.c (код функций) + file.h (прототипы функций), а в файле, откуда вызывается функция, вписывается #include "file.h"?
0
|
|
|
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
|
|
| 31.12.2012, 04:12 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 28.09.2012
Сообщений: 20
|
||
| 31.12.2012, 16:11 [ТС] | ||
|
0
|
||
|
247 / 1 / 1
Регистрация: 02.01.2013
Сообщений: 31
|
||
| 02.01.2013, 15:38 | ||
|
Например, интерфейс может содержать одну функцию, а для реализации потребуется создать десяток переплетенных функций. В процессе кодирования значительно проще видеть одну функцию с параметрами, чем клубок чего-то непонятного.
0
|
||
| 02.01.2013, 15:38 | |
|
Помогаю со студенческими работами здесь
12
Разделение скрипта по файлам Разделение шаблонного класса по файлам Разделение объявлений и определений по файлам
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|