1 / 1 / 0
Регистрация: 01.10.2020
Сообщений: 60

ncurses.h colors multifile project

21.12.2021, 13:06. Показов 2358. Ответов 3

Студворк — интернет-сервис помощи студентам
Sorry that i write in English , i am just in wmaware and not find russian letters.

I dont know why color dont work on my output , i think problem in compiling. I have multicompile files witch collect in make file

makefile

SpaceRace: main.o point.o RaceGame.o input.o player.o
g++ main.o point.o player.o RaceGame.o input.o -o SpaceRace -lncurses
main.o: main.cpp
g++ -c main.cpp
point.o: point.cpp point.h
g++ -c point.cpp
RaceGame.o: RaceGame.cpp RaceGame.h
g++ -c RaceGame.cpp
input.o: input.cpp input.hpp
g++ -c input.cpp
player.o: player.cpp player.h point.h
g++ -c player.cpp
clear:
rm *.o SpaceRace

I am creating game SpaceRace , everything working ok , but i decide to add colors , but i don't know why it's not working , its not working only with this project, thaks for help.

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
#include <ncurses.h>
#include <sys/ioctl.h>
#include <stdio.h>
#include <unistd.h>
#include "point.h"
#include "RaceGame.h"
 
 
int main()
{
    //Size of terminal 
    struct winsize w;
    ioctl(STDOUT_FILENO, TIOCGWINSZ, &w);
    const int TerminalHeight = w.ws_row;
    const int TerminalWidth = w.ws_col;
    
 
    initscr();
    WINDOW* win;
        win = stdscr;   
    start_color;    
    init_pair(1,COLOR_RED, COLOR_BLACK);
    attron(COLOR_PAIR(1));
    mvwprintw(win ,5, 4,"%d",8);    
    attroff(COLOR_PAIR(1));
    getch();
 
    keypad(stdscr, TRUE);
    RaceGame a(TerminalHeight, TerminalWidth);  
    a.StartGame();
    refresh();
    endwin();
 
}
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.12.2021, 13:06
Ответы с готовыми решениями:

Заставить видеть .cpp файл без использования Project->Add to project
Здравствуйте. Возникла ситуация, которую хочется правильно разрешить: &quot;Есть юнит (пусть будет юнит №1), который расположен в отдельной...

$(.).MultiFile is not a function в head
Всем доброго времени суток. Возникла такая проблема: в теге head подключаю несколько файлов скриптов js: &lt;script...

Консольная игра colors
доброго времени суток, пишу игру colors - представляет собой падающие блоки которые нужно совмещать по цвету 3 и более по горизонтали,...

3
Windows must die
672 / 849 / 103
Регистрация: 23.11.2021
Сообщений: 4,971
Записей в блоге: 16
21.12.2021, 14:12
Лучший ответ Сообщение было отмечено Grigorichhs как решение

Решение

Цитата Сообщение от Grigorichhs Посмотреть сообщение
start_color;
Пропущены скобочки.
Я вставил в пример и появилась красная восьмерка.
И без -ltinfo оно не соберется. Лучше библиотеки так определять:
Code
1
LDFLAGS += $(pkg-config --libs ncurses)
0
1 / 1 / 0
Регистрация: 01.10.2020
Сообщений: 60
21.12.2021, 14:19  [ТС]
Блин целый день мучался над этим , а оказалось из-за скобки , спасибо большое , да не вроде всё норм работает скомпилировался , а ваш код мне вообще не знаком
0
Windows must die
672 / 849 / 103
Регистрация: 23.11.2021
Сообщений: 4,971
Записей в блоге: 16
21.12.2021, 15:02
Цитата Сообщение от Grigorichhs Посмотреть сообщение
ваш код мне вообще не знаком
Это - для Makefile.
Вот - простой пример шаблона, который я использую там, где не нужно уйму библиотек в зависимостях указывать (т.е. можно без Cmake обойтись):
Code
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
# run `make DEF=...` to add extra defines
PROGRAM :=
LDFLAGS := -fdata-sections -ffunction-sections -Wl,--gc-sections -Wl,--discard-all
SRCS := $(wildcard *.c)
DEFINES := $(DEF) -D_GNU_SOURCE -D_XOPEN_SOURCE=1111
OBJDIR := mk
CFLAGS += -O2 -Wno-trampolines -std=gnu99
OBJS := $(addprefix $(OBJDIR)/, $(SRCS:%.c=%.o))
DEPS := $(OBJS:.o=.d)
CC = gcc
#CXX = g++
 
 
all : $(OBJDIR) $(PROGRAM)
 
debug: CFLAGS += -DEBUG -Werror -Wall -Wextra 
debug: all
 
$(PROGRAM) : $(OBJS)
        @echo -e "\t\tLD $(PROGRAM)"
        $(CC) $(LDFLAGS) $(OBJS) -o $(PROGRAM)
 
$(OBJDIR):
        mkdir $(OBJDIR)
 
ifneq ($(MAKECMDGOALS),clean)
-include $(DEPS)
endif
 
$(OBJDIR)/%.o: %.c
        @echo -e "\t\tCC $<"
        $(CC) -MD -c $(LDFLAGS) $(CFLAGS) $(DEFINES) -o $@ $<
 
clean:
        @echo -e "\t\tCLEAN"
        @rm -f $(OBJS) $(DEPS)
        @rmdir $(OBJDIR) 2>/dev/null || true
 
xclean: clean
        @rm -f $(PROGRAM)
 
.PHONY: clean xclean
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.12.2021, 15:02
Помогаю со студенческими работами здесь

gnome-terminal colors
Здравствуйте! Чтобы изменить цвет шрифта или текста gnome-terminal нужно использовать управляющие последовательности &quot;\E[3%xm&quot;...

Вкладка Colors Delphi XE8
Как с помощью этого HueTrackBar компонента получить цвет? С ColorPanel получаю делаю так но с HueTrackBar подобный код уже неработает... ...

Написать игру '7 colors (1991)'
Нужно сделать игру, название которой 7 colors (1991) или же filler. Буду очень благодарен за помощь.

Odessa - Project Manager/ Web development Project Leader
Project Manager/ Web development Project Leader A fast growing company opens a position for a Web Development Project Leader / Manager...

Как создать Windows Form Project из Empty Project)
Если можно дайте ссылку для прочтения и самоизучения, либо покажите на пальцах,по пунктах.


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru