Size: a a a

2020 November 19

МС

Михаил Садилов... in Deus Volt!
А контура от плат, что "пришли" вместе с платами? Они не будут в гербер записываться чтоль?
источник

И

Илья in Deus Volt!
Михаил Садилов
А контура от плат, что "пришли" вместе с платами? Они не будут в гербер записываться чтоль?
Неа, про него забудь, резать будут по контуру в панели
источник

МС

Михаил Садилов... in Deus Volt!
Спасибо!
источник

V

VadimAnimeEmbedder in Deus Volt!
Василий
откуда предположение что он ДОЛЖЕН быть ?
Мне тут предложили в личку супер вариант. Просто не присваивать никакого значения. Тогда все попадет в COMMON секцию. И она у меня уже загрузчиком в 0 затрется.
источник

РМ

Роман Матвеев... in Deus Volt!
Вопрос по Си:
Можно ли как-то избавиться от двойного декларирования переменных при их использовании с ключевым словом extern. Например:

*main.c*
int a;

*tool.c*
void func(void){
 extern int a;
 a++;
}

Насколько я понял - "int" в предпредпоследней строчке является обязательным.
В чем тут проблема: если переменная используется в нескольких местах и/или тип переменной что-то более сложное чем "int", то приходится править по всем исходникам :(
источник

В

Василий in Deus Volt!
Роман Матвеев
Вопрос по Си:
Можно ли как-то избавиться от двойного декларирования переменных при их использовании с ключевым словом extern. Например:

*main.c*
int a;

*tool.c*
void func(void){
 extern int a;
 a++;
}

Насколько я понял - "int" в предпредпоследней строчке является обязательным.
В чем тут проблема: если переменная используется в нескольких местах и/или тип переменной что-то более сложное чем "int", то приходится править по всем исходникам :(
Обявите main.h и в нем напишите extern int a. Во всех файлах которые его используют добавьте инклуд
источник

РМ

Роман Матвеев... in Deus Volt!
Василий
Обявите main.h и в нем напишите extern int a. Во всех файлах которые его используют добавьте инклуд
Понял, спасибо, попробую
источник

РМ

Роман Матвеев... in Deus Volt!
Василий
Обявите main.h и в нем напишите extern int a. Во всех файлах которые его используют добавьте инклуд
Секундочку, так мне все равно придется повторно int писать?
Разница будет только в том, что тип переменной (int в данном примере) нужно будет указать только в двух местах, а не в каждом файле? Верно?
источник

В

Василий in Deus Volt!
Роман Матвеев
Секундочку, так мне все равно придется повторно int писать?
Разница будет только в том, что тип переменной (int в данном примере) нужно будет указать только в двух местах, а не в каждом файле? Верно?
Если вы напишете extern в заголовочнике, то он будет появляться в каждом файле который его использует
источник

В

Василий in Deus Volt!
В случае переделок нужно будет менять только 2 раза
источник

И

Илья in Deus Volt!
А можно вообще не юзать экстерн, это вообще показатель отсутствия какой либо архитектуры
источник

РМ

Роман Матвеев... in Deus Volt!
Василий
Если вы напишете extern в заголовочнике, то он будет появляться в каждом файле который его использует
Т.е. нужно вот так:

*main.h*
int a;

*main.c*
void main(void){
 a = 0;
}

*tools.c*
#include "main.h"
void func(void){
 a++;
}

Верно?
источник

В

Василий in Deus Volt!
Роман Матвеев
Т.е. нужно вот так:

*main.h*
int a;

*main.c*
void main(void){
 a = 0;
}

*tools.c*
#include "main.h"
void func(void){
 a++;
}

Верно?
нет
источник

И

Илья in Deus Volt!
@trashHardware давайте туда
источник

В

Василий in Deus Volt!
Роман Матвеев
Т.е. нужно вот так:

*main.h*
int a;

*main.c*
void main(void){
 a = 0;
}

*tools.c*
#include "main.h"
void func(void){
 a++;
}

Верно?
*main.h*
extern int a;

*main.c*
int a;
void main(void){
 a = 0;
}

*tools.c*
#include "main.h"
void func(void){
 a++;
}
источник

РМ

Роман Матвеев... in Deus Volt!
Илья
@trashHardware давайте туда
тут не принято обсуждать программирование?
источник

В

Василий in Deus Volt!
Роман Матвеев
тут не принято обсуждать программирование?
просто очень простая тема )
источник

IF

Imya Familiev in Deus Volt!
Василий
просто очень простая тема )
я вот по другому делаю:
во первых все глобальные данные сую в одну структуру, чтоб из кода сразу было понятно что это глобал данные
во вторых можно сделать такой финт ушами
глобальную структуру обьявить в файле global.h в таком виде
https://pastebin.com/JsX5qYzE

и его инклудить во все исходники где надо глобальные данныею
а в main.c инклудим чуть по другому
#define MAIN_NO_EXTERN
#include "global.h"
#undef MAIN_NO_EXTERN

таким образом все обьявлено в одном месте
источник

M

Mitek in Deus Volt!
Imya Familiev
я вот по другому делаю:
во первых все глобальные данные сую в одну структуру, чтоб из кода сразу было понятно что это глобал данные
во вторых можно сделать такой финт ушами
глобальную структуру обьявить в файле global.h в таком виде
https://pastebin.com/JsX5qYzE

и его инклудить во все исходники где надо глобальные данныею
а в main.c инклудим чуть по другому
#define MAIN_NO_EXTERN
#include "global.h"
#undef MAIN_NO_EXTERN

таким образом все обьявлено в одном месте
ещё можно использовать (подробности в гугле)
#if ( FILE == ...)
без #define MAIN_NO_EXTERN
источник

И

Илья in Deus Volt!
Роман Матвеев
тут не принято обсуждать программирование?
Тут не принято обсуждать совсем примитивщину типа синтаксиса языка, инфы по которой вагон и тележка в гугле. Для этого есть флудилка
источник