Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.65/48: Рейтинг темы: голосов - 48, средняя оценка - 4.65
0 / 0 / 0
Регистрация: 14.09.2016
Сообщений: 153

IDE для программирования на C для начинающего под Windows.

26.03.2018, 21:54. Показов 10093. Ответов 27
Метки си (Все метки)

Студворк — интернет-сервис помощи студентам
Посоветуйте программу для программирования на си для начинающего для windows.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.03.2018, 21:54
Ответы с готовыми решениями:

Бесплатные среды (IDE) для программирования на С/С++ для Windows 7
Я сейчас учусь программировать на C++. Мне нужен был хороший компилятор и ГЛАВНОЕ - ДЛЯ WINDOWS 7 И на русском языке (Желательно) Я...

Бесплатная IDE для программирования под JavaME
Подскажите, пожалуйста, бесплатную IDE для программирования под JavaME, только что бы не очень требовательная была, ато у меня комп слабый,...

IDE для C под Windows и Linux
Подскажите, пожалуйста, хорошие IDE для C )

27
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
13205 / 6840 / 1822
Регистрация: 18.10.2014
Сообщений: 17,298
27.10.2019, 10:36
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Матричный бог Посмотреть сообщение
Посоветуйте программу для программирования на си для начинающего для windows.
Обыкновенный Visual Studio. (Не ясно, откуда даже возникает такой вопрос, если речь идет именно о windows).

Добавлено через 3 минуты
Цитата Сообщение от zeroalef Посмотреть сообщение
vs2010 точно взлетит. Компиль от майкров запилен под какой-то переходный С 91-го года, если для вас это важно. О с99 даже и речи быть не может, не говоря уж о с11. Если устроит -- писать си-стайл на крестах.
Откуда постоянно лезет эта чушь - не ясно. С Visual Studio идет очень хороший компилятор чистого С. Начиная с VS2013 в Visual Studio есть [почти] полная поддержка C99, с разве что с несколькими отсутствующими фичами. Что касается поддержки "классического" C89/90 - компилятор С в Visual Studio является одним из самых уважаемых на рынке.

Ни о каком "писать си-стайл на крестах", разумеется, не может быть и речи.
1
из племени тумба-юбма
 Аватар для мама Стифлера
2523 / 1819 / 419
Регистрация: 29.11.2015
Сообщений: 8,857
Записей в блоге: 15
27.10.2019, 11:02
Цитата Сообщение от L0M Посмотреть сообщение
Не может быть. Это зависит от ключей компиляции/сборки. Поскольку обе этих IDE используют один и тот же компилятор. Вы просто где-то проект неправильно настроили.
Вы оказались правы сделал согласно рекомендации
Цитата Сообщение от mpol Посмотреть сообщение
Project->Project Options->Compiler->Linker->strip executable=Yes
или
Сервис>Параметры компилятора>Настройки>Компоновщик>strip executable=Yes
Фал на выходе теперь даже меньше, чем у Code::Blocks
Цитата Сообщение от L0M Посмотреть сообщение
Dev-C++ - штука для аскетов. Проще только Notepad вкупе с компиляцией с командной строки
Все верно, таким и должно быть обучающее ПО, чем проще - тем лучше и понятнее. А уже потом, когда научишься писать более менее бытовые программы, можно на любую IDE переходить, проблем с этим не будет.
0
Мозгоправ
 Аватар для L0M
1745 / 1039 / 468
Регистрация: 01.10.2018
Сообщений: 2,138
Записей в блоге: 2
27.10.2019, 14:51
Цитата Сообщение от мама Стифлера Посмотреть сообщение
Все верно, таким и должно быть обучающее ПО, чем проще - тем лучше и понятнее. А уже потом, когда научишься писать более менее бытовые программы, можно на любую IDE переходить, проблем с этим не будет.
С одной стороны, да, когда учишься, нужно понимать что ты делаешь. Блокнот и компиляция с командной строки. (Кстати, многие минуют этот этап, и, пользуясь IDE, даже не подозревают, что где-то там есть компилятор.)

С другой стороны, минимальное использование стандартных библиотечных функций приводит нуба в ступор: какие параметры? в каком порядке? какой тип должен быть у первого параметра? а у второго? Вот тут и очень в тему приходятся всплывающие подсказки, автозавершение ввода и прочие приятные плюшки развитой IDE. И, конечно, осваивать язык гораздо проще с дружелюбным отладчиком. Когда в любой момент можно посмотреть состояние переменных, пошагово пройти сложный фрагмент и пр. (Кстати, здесь, на форуме, довольно часто попадаются вопросы произрастающие из того, что люди не умеют пользоваться отладчиком. Иногда от слова "совсем".)
1
1 / 1 / 0
Регистрация: 28.03.2015
Сообщений: 94
04.05.2020, 08:25
Зашел на сайт PelleC, скачал, а оно на win7x32 на ставится, узнал что и Visual Studio нынче только под x64, не стал пробовать. У какой IDE еще сохранена работа в win7x32, задача получить оконное windows-приложение. Или для этого IDE не обязательна? Код пишу в notepad++.
0
 Аватар для COKPOWEHEU
4087 / 2685 / 432
Регистрация: 09.09.2017
Сообщений: 11,939
04.05.2020, 09:23
Цитата Сообщение от mode2 Посмотреть сообщение
У какой IDE еще сохранена работа в win7x32
Да по идее в любой человеческой IDE должна быть возможность подключить любой компилятор, любой отладчик и т.п. Я когда-то из любопытства пробовал Dev-C++, правда у него проблемы с не-латинскими символами, то есть по-человечески русский язык не прикрутите. Впрочем, в винде он в принципе нормально не прикручивается.
Цитата Сообщение от mode2 Посмотреть сообщение
задача получить оконное windows-приложение. Или для этого IDE не обязательна? Код пишу в notepad++.
Совершенно не обязательна. Более того, IDE может навязывать свое странное представление о GUI.
Собственно, если нужно просто окно, скажем, для вывода трехмерной графики, лучше всего взять SDL, SFML, GLUT или подобные.
Если же акцент именно на GUI, возьмите Qt или GTK.
Использовать чистый winapi для создания окна почти всегда будет плохим решением: это трудоемко и не дает такого полезного опыта как предыдущие варианты. Единственное когда winapi оправдано, это когда нужно сделать windows-специфичное приложение предельно маленького размера. Ну либо для разработчиков предыдущих библиотек. То есть очень редкие ситуации. Да, если считаете что winapi может дать опыт в низкоуровневом программировании - это не так. Работа с оконными событиями в SDL нагляднее, а не-оконные системные вызовы лучше учить по POSIX (линуксовые, например, да и в винде если постараться можно найти). Там это гораздо лучше продумано.
1
1 / 1 / 0
Регистрация: 28.03.2015
Сообщений: 94
04.05.2020, 11:44
Но к чему-то же надо эти библиотеки подключать. К чему? Инклюдю библиотеку в коде и получаю оконный экзешник через gcc (использую mingw)?
0
 Аватар для COKPOWEHEU
4087 / 2685 / 432
Регистрация: 09.09.2017
Сообщений: 11,939
04.05.2020, 14:32
Вам подробно рассказать об основах работы gcc?
Если кратко, у вас есть несколько файлов исходного кода, которые написали вы (*.c, *.cpp, *.S например), плюс сторонние библиотеки (*.a + *.h либо *.dll (*.so для линукса) + *.h), которые уже кем-то скомпилированы.
Свои файлы вы собираете независимо каждый в отдельный объектный файл, возможно с разными флагами:
Code
1
2
gcc -c file1.c `pkg-config --cflags gtk+-3.0` -o file1.o
gcc -c file2.c -Wall -o file2.o
В результате получаем несколько объектных файлов (*.o) и файлов библиотек, которые мы пока не трогали. Этот этап назывался собственно компиляция, то есть перевод из текстового формата файла исходного кода в бинарный формат, специфичный для данной операционной системы.
И наконец нужно все эти заготовки собрать в один общий исполняемый файл:
Code
1
gcc file1.o file2.o lib123.a -lm -o prog.exe
Стоит отметить, что библиотеки можно указывать вручную, полным именем (lib123.a), либо по сокращенному, но предваряемому ключом -l, причем имя библиотеки автоматически достраивается префиксом lib и суффиксом .a. Так, записью -lm подключается libm.a (стандартная математическая библиотека).
.
По началу указывать эти флаги можно и вручную, но потом лучше освоить make и формат его настроек makefile.
Тот же dev-c++ использует makefile, но генерируемый самой средой. Флаги, указанные в настройках компилятора (compiler) подставляются на стадию компиляции, флаги линковки (linker) - в стадию линковки.
То есть в dev-c++ нужно будет зайти в настройки проекта и добавить библиотеки там.
.
Лично я использую makefile в чистом виде, без всяких IDE. Правда, вам его выкладывать лучше не буду, уж больно он сложный получился. Хотя все равно проще, чем генерируемые IDE.
0
9949 / 2949 / 497
Регистрация: 05.10.2013
Сообщений: 8,024
Записей в блоге: 242
07.05.2020, 02:25
Цитата Сообщение от mode2 Посмотреть сообщение
Но к чему-то же надо эти библиотеки подключать. К чему? Инклюдю библиотеку в коде и получаю оконный экзешник через gcc (использую mingw)?
У меня тоже MinGW (32 бита). Покажу пример создания окна на SDL2, на котором будет рисоваться зелёный прямоугольник. Покажу, как подключать библиотеку и инклуды в простом Makefile для компиляции на Windows с помощью gcc.

Название: 001-rectangle-sdl2-clang.png
Просмотров: 31

Размер: 2.2 Кб

Скачайте библиотеку SDL2-devel-2.0.12-mingw.tar.gz (MinGW 32/64-bit) (ссылка взята с официального сайта: https://www.libsdl.org/download-2.0.php). После разархиварования вы найдёте три каталога: "bin", "include", "lib".

Мне лично нравится скопировать один раз "SDL2.dll" из "bin" в "C:\Windows\SysWOW64". Если у вас 32 битная ОС, то в "C:\Windows\System32". Тогда не придётся каждый раз копировать в каждый свой пример "SDL2.dll", то если вы соберётесь отослать EXE другу, то нужно, чтобы рядом с EXE лежала динамическая библиотека "SDL2.dll".

Создайте каталог для своего проекта. Перейдите в него из консоли. Создайте файл Makefile и файл main.c и запустите команду: mingw32-make

Makefile

Code
1
2
3
4
5
6
7
8
9
10
CC = gcc
INC = -I"E:\Libs\SDL2-devel-2.0.12-mingw\include"
LIB = -L"E:\Libs\SDL2-devel-2.0.12-mingw\lib"
FLAGS = -c
 
all: main.o
    $(CC) main.o $(LIB) -lSDL2.dll -o app
 
main.o: main.c
    $(CC) $(FLAGS) $(INC) main.c
main.c

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#define SDL_MAIN_HANDLED
#include <stdbool.h>
#include <SDL.h>
 
int main()
{
    bool quit = false;
    SDL_Event event;
 
    SDL_Init(SDL_INIT_VIDEO);
 
    SDL_Window *window = SDL_CreateWindow("Прямоугольник",
                                          SDL_WINDOWPOS_CENTERED,
                                          SDL_WINDOWPOS_CENTERED,
                                          270, 270, 0);
    SDL_Renderer *renderer = SDL_CreateRenderer(window, -1, 0);
 
    SDL_Rect r;
    r.x = 50;
    r.y = 50;
    r.w = 100;
    r.h = 50;
 
    while (!quit)
    {
        SDL_WaitEvent(&event);
 
        switch (event.type)
        {
        case SDL_QUIT:
            quit = true;
            break;
        }
 
        SDL_SetRenderDrawColor(renderer, 0, 200, 0, 255);
        SDL_RenderFillRect(renderer, &r);
        SDL_RenderPresent(renderer);
    }
 
    SDL_DestroyRenderer(renderer);
    SDL_DestroyWindow(window);
    SDL_Quit();
 
    return 0;
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.05.2020, 02:25
Помогаю со студенческими работами здесь

Посоветуйте IDE для начинающего
Доброго времени суток! Я только начинаю работать с С++, посоветуйте, пожалуйста, какие программы лучше использовать, включая все...

Выбор IDE и литературы для начинающего
Здраствуйте всем.Подскажите пожавуста где пишеца програма.Хочу ноучица писать програмы,но не знаю где писать.:(

Подскажите IDE для начинающего Java программиста
Доброго дня! Только недавно начал изучать Java, и столкнулся с проблемой выбора IDE, перепробовал Eclipse, AndroidStudio, ещё что то...

Стоит ли изучать C# для программирования под windows phone?
Привет! Подскажите, стоит ли изучать C# и на мозг как воспринимается? Изучил пока что основы PHP, к функциям не переходил.

Посоветуйте ide или текстовый редактор для начинающего (Idle не предлагать)
Подходит ли Geany для начинающего? P.S Idle не запускается на Windows 10. К тому же имеет некоторые клише которых нет в других ide или...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
28
Ответ Создать тему
Новые блоги и статьи
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru