Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1] 2  Все   Вниз
  Печать  
Автор Тема: [C/C++ Unix] Учимся программировать на C/C++ вместе  (Прочитано 62181 раз)
0 Пользователей и 1 Гость смотрят эту тему.
ffobos
Интересующийся

ru
Offline Offline

« : 19-01-2011 06:44 » 

Всем новичкам! Кто желает изучить C/C++ *NIX, предлогаю изучать совместно.
Также выкладывать свои достижения, делится опытом, задавать глупые вопросы и получать умные ответы или на оборот и т.д.
« Последнее редактирование: 20-01-2011 02:50 от ffobos » Записан
Dale
Блюзмен
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 19-01-2011 07:12 » 

Какая программа изучения?
Записан

Всего лишь неделя кодирования с последующей неделей отладки могут сэкономить целый час, потраченный на планирование программы. - Дж. Коплин.

Ходить по воде и разрабатывать программное обеспечение по спецификациям очень просто, когда и то, и другое заморожено. - Edward V. Berard

Любые проблемы в информатике решаются добавлением еще одного уровня косвенности – кроме, разумеется, проблемы переизбытка уровней косвенности. — Дэвид Уилер.
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #2 : 19-01-2011 07:14 » 

ffobos, почитай вот это - может поможет: https://club.shelek.ru/view.php?id=3
Ну и орфографический словарик еще порекомендую.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
ffobos
Интересующийся

ru
Offline Offline

« Ответ #3 : 19-01-2011 07:16 » 

Какая программа изучения?
в смысле дистрибутив? или замысел темы?

Добавлено через 33 минуты и 40 секунд:
пример первый, наверное многие уже пробовали первую программу Hello world
Код:
#include <stdio.h>



int main(void)

{

printf("Hello world!\n");

return(0);

}

А как зделать чтобы текст выводися в определенной части экрана?
Код:
#include <stdio.h>
#define ESC "\033"

int x = 20;
int y = 10;

int main(void)
 {
  printf(ESC "[2J") >= 0;/*очиска экрана*/

  /*вывод текста по x, y точка отчета в верхнем левом углу*/
  printf(ESC "[%d;%dHHello world!\n", y, x) >= 0;

  return(0);

 }

тагже можно в строке  printf(..... вместо "[%d;%dH например указать координаты  "[10;20H
« Последнее редактирование: 19-01-2011 07:50 от ffobos » Записан
Dale
Блюзмен
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #4 : 19-01-2011 07:19 » 

Зачем мне "дестрюбютив"?

Когда изучают какой-то предмет, обычно составляют программу, что именно, в какой последовательности и объеме будет изучено.
Записан

Всего лишь неделя кодирования с последующей неделей отладки могут сэкономить целый час, потраченный на планирование программы. - Дж. Коплин.

Ходить по воде и разрабатывать программное обеспечение по спецификациям очень просто, когда и то, и другое заморожено. - Edward V. Berard

Любые проблемы в информатике решаются добавлением еще одного уровня косвенности – кроме, разумеется, проблемы переизбытка уровней косвенности. — Дэвид Уилер.
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #5 : 19-01-2011 07:20 » 

Ну и орфографический словарик еще порекомендую.

кардинаты

мда, видимо в армии совсем плохо Жаль
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
ffobos
Интересующийся

ru
Offline Offline

« Ответ #6 : 19-01-2011 07:21 » 

 Улыбаюсь

Добавлено через 3 минуты и 16 секунд:
Ну и орфографический словарик еще порекомендую.

кардинаты

мда, видимо в армии совсем плохо Жаль
я не виновен что здесь нет правки отправленого сообщения, а голова и так кипит некогда смотреть за ошибками.

Добавлено через 1 час, 3 минуты и 48 секунд:
нашел правку! у меня браузер крива показыват. не все высвечивал
« Последнее редактирование: 19-01-2011 08:28 от ffobos » Записан
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #7 : 19-01-2011 08:01 » 

нашол правку!

ffobos, если нашЕл, то исправляй!
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #8 : 19-01-2011 08:06 » 

ffobos,  похвальное желание.
Но по глазам режет

тагже
дестрюбютив
крива

а  эта фраза убила
да это может помоч, но если комуто чтото непонятно, и неукого спросить, начнут открывать кучю тем и форум просто утонит в темах.
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Dale
Блюзмен
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #9 : 19-01-2011 08:16 » 

Грамматика еще полбеды, тут, пожалуй, девять из десяти пишут ничуть не лучше...

С программой курса давайте определимся.
Записан

Всего лишь неделя кодирования с последующей неделей отладки могут сэкономить целый час, потраченный на планирование программы. - Дж. Коплин.

Ходить по воде и разрабатывать программное обеспечение по спецификациям очень просто, когда и то, и другое заморожено. - Edward V. Berard

Любые проблемы в информатике решаются добавлением еще одного уровня косвенности – кроме, разумеется, проблемы переизбытка уровней косвенности. — Дэвид Уилер.
Вад
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #10 : 19-01-2011 08:24 » 

Двигаю тему в "Начинающим" - всё-таки, "C/C++" - ветка для более основательных вопросов.
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #11 : 19-01-2011 10:45 » 

Признаться, почему управляющие коды ANSI-терминала названы "изучение UNIX", я не понимаю... С тем же успехом это и изучение MS-DOS, например...
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #12 : 19-01-2011 22:40 » 

Дим, в DOS драйвер ansi.sys был ограниченным. Последовательностей там существенно больше. Мне особенно нравились последовательности запоминания и восстановления позиции курсора.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
ffobos
Интересующийся

ru
Offline Offline

« Ответ #13 : 20-01-2011 02:46 » 

Признаться, почему управляющие коды ANSI-терминала названы "изучение UNIX", я не понимаю... С тем же успехом это и изучение MS-DOS, например...

Скорей всего потому что они используюся в UNIX тоже, да и  UNIX изначально это терминальная OC, это позже начали навешевать графические оболочки, а DOS ка был DOS-ом, так и остался. У  DOS вроде толька одна графическа оболочка WINDOWS 3.... и то жила не долго.
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #14 : 20-01-2011 06:32 » 

Цитата: RXL
Мне особенно нравились последовательности запоминания и восстановления позиции курсора.
Они в DOS были Улыбаюсь
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #15 : 20-01-2011 07:41 » 

ffobos, не говори глупостей, если не знаешь.
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #16 : 20-01-2011 08:22 » 

хм, точно помню ещё оболочки - нортон, волков )
Записан

Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #17 : 20-01-2011 10:20 » 

Dos Navigator - мощная штука, в ней даже табличный процессор был встроенный Улыбаюсь
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
ffobos
Интересующийся

ru
Offline Offline

« Ответ #18 : 21-01-2011 02:15 » 

нортон, волков, Dos Navigator- это разве графические оболчки?
Записан
Антон (LogRus)
Глобальный модератор

ru
Offline Offline
Пол: Мужской
Внимание! Люблю сахар в кубиках!


WWW
« Ответ #19 : 21-01-2011 04:44 » 

ffobos, не говори глупостей, если не знаешь.
не мог бы ты пояснить?
я честно не понял Улыбаюсь
толи ты про Win1, 2, 3, 3.1 не согласен, то ли про отсутсвие GUI в unix
Записан

Странно всё это....
Oldy
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #20 : 21-01-2011 05:19 » 

В MS DOS был Shell. У DR DOS, NW DOS и пр. были свои оболчки подобные Shell.
« Последнее редактирование: 21-01-2011 05:23 от Oldy » Записан

С уважением, Oldy.
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #21 : 21-01-2011 05:34 » 

нортон, волков, Dos Navigator- это разве графические оболчки?
точно не текстовые. Окна, мышь, полосы прогресса, кнопки - все дела. И неважно, что всё это нарисовано цветным текстом и фоном Улыбаюсь Принцип общения с пользователем то уже совершенно другой - визуальный
Записан

Dale
Блюзмен
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #22 : 21-01-2011 06:32 » 

И все-таки по теме.

Планируется ли планомерное изучение материала, или это будет просто коллекция фокусов типа "адресовать курсорчик в текстовом окошке", "помигать лампочкой Scroll Lock", "подвигать туды-сюды лоточком DVD-ROM" и в том же духе? Если первое, я с удовольствием поучаствую. Если второе - без меня.
Записан

Всего лишь неделя кодирования с последующей неделей отладки могут сэкономить целый час, потраченный на планирование программы. - Дж. Коплин.

Ходить по воде и разрабатывать программное обеспечение по спецификациям очень просто, когда и то, и другое заморожено. - Edward V. Berard

Любые проблемы в информатике решаются добавлением еще одного уровня косвенности – кроме, разумеется, проблемы переизбытка уровней косвенности. — Дэвид Уилер.
ffobos
Интересующийся

ru
Offline Offline

« Ответ #23 : 22-01-2011 03:11 » 

Предположем ситуацию когда надо чтобы программа постоянно была в цикле но при этом надо ожидать нажатия клавиши. Следующий код проверяет нажатия клавиши но при этом продолжает выполнять цикл.
Код:
#include <stdio.h>
#include <stdlib.h>
#include <termios.h>
int c;
int main (int argc, char ** argv)
{
  struct termios oldsettings, newsettings;
  tcgetattr(fileno(stdin), &oldsettings);
  newsettings = oldsettings;
  newsettings.c_lflag &= ~(ECHO|ICANON|ISIG);
  newsettings.c_cc[VMIN] = 0;
  newsettings.c_cc[VTIME] = 0;
  tcsetattr(fileno(stdin), TCSANOW, &newsettings);
  while((c=getchar()) != 'q') {
    sleep(1);
    printf("%x\n", c);
  }
  tcsetattr(fileno(stdin), TCSANOW, &oldsettings);
  return EXIT_SUCCESS;
}
При нажатии на «q» завершает цикл

Добавлено через 5 минут и 3 секунды:
И все-таки по теме.

Планируется ли планомерное изучение материала, или это будет просто коллекция фокусов типа "адресовать курсорчик в текстовом окошке", "помигать лампочкой Scroll Lock", "подвигать туды-сюды лоточком DVD-ROM" и в том же духе? Если первое, я с удовольствием поучаствую. Если второе - без меня.
надо открыть тему "разговоры не очем".
« Последнее редактирование: 22-01-2011 03:16 от ffobos » Записан
Dale
Блюзмен
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #24 : 22-01-2011 03:22 » 

Зачем открывать новую? Вполне можно переименовать эту. Если открыть еще одну, будет целых две темы ни о чем.
Записан

Всего лишь неделя кодирования с последующей неделей отладки могут сэкономить целый час, потраченный на планирование программы. - Дж. Коплин.

Ходить по воде и разрабатывать программное обеспечение по спецификациям очень просто, когда и то, и другое заморожено. - Edward V. Berard

Любые проблемы в информатике решаются добавлением еще одного уровня косвенности – кроме, разумеется, проблемы переизбытка уровней косвенности. — Дэвид Уилер.
ffobos
Интересующийся

ru
Offline Offline

« Ответ #25 : 22-01-2011 04:02 » new

Зачем открывать новую? Вполне можно переименовать эту. Если открыть еще одну, будет целых две темы ни о чем.
Вообще-то я хотел здесь пообщаться с себе подобными (кто только взялся изучать С) обменяться знаниями да и помощь профессионала не плохо было-бы получить.

Добавлено через 3 минуты и 49 секунд:
Зачем открывать новую? Вполне можно переименовать эту. Если открыть еще одну, будет целых две темы ни о чем.
Вообще-то я хотел здесь пообщаться с себе подобными (кто только взялся изучать С) обменяться знаниями да и помощь профессионала не плохо было-бы получить.
хотя можно переименовать тогда я снова тему эту открою. надо с Админом соглосовать

Добавлено через 15 минут и 50 секунд:
нортон, волков, Dos Navigator- это разве графические оболчки?
точно не текстовые. Окна, мышь, полосы прогресса, кнопки - все дела. И неважно, что всё это нарисовано цветным текстом и фоном Улыбаюсь Принцип общения с пользователем то уже совершенно другой - визуальный
еще как текстовые! все эти линии отрисованы готовыми сегментами, если их нет у тебя на клаве это незначит что их не существует, есть множество дополнительных аски таблиц, можеш даже сам создовать
« Последнее редактирование: 22-01-2011 04:22 от ffobos » Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #26 : 22-01-2011 04:30 » 

ffobos, программирование не зависит от ОС. ОС только предоставляет интерфейс обшения с внешним миром. Так что, в самом начале нужно научиться программировать вообше, а затем уже играться с особенностями ОС. О чем, хоть и в очень саркастической манере, сказал Dale.
Т.е. для тебя примерно должна быть такая программа изучения.
1) синтаксис языка. Пока не нужны шаблоны, но нужно захватить и понять ООП.
2) Изучение стандартных алгоритмов.
2+) Изучение стандартных библиотек.
3) Изучение шаблонов проектирования.
4) Шаблоны.

Пункты два и три нужны для того, чтобы не изобретать собственный велосипед.
« Последнее редактирование: 22-01-2011 04:34 от Finch » Записан

Не будите спашяго дракона.
             Джаффар (Коша)
ffobos
Интересующийся

ru
Offline Offline

« Ответ #27 : 22-01-2011 08:21 » 

ffobos, программирование не зависит от ОС. ОС только предоставляет интерфейс обшения с внешним миром. Так что, в самом начале нужно научиться программировать вообше, а затем уже играться с особенностями ОС. О чем, хоть и в очень саркастической манере, сказал Dale.
Т.е. для тебя примерно должна быть такая программа изучения.
1) синтаксис языка. Пока не нужны шаблоны, но нужно захватить и понять ООП.
2) Изучение стандартных алгоритмов.
2+) Изучение стандартных библиотек.
3) Изучение шаблонов проектирования.
4) Шаблоны.

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

Добавлено через 1 минуту и 39 секунд:
подскажите как в ANSI курсор спрятать
« Последнее редактирование: 22-01-2011 08:23 от ffobos » Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #28 : 22-01-2011 09:21 » 

ffobos,
>>еще как текстовые! все эти линии отрисованы готовыми сегментами

я и сказал, что всё текстовое. Но юзеру то, извиняюсь, глубоко насрать на это - у него линии и окошки Улыбаюсь
Записан

ffobos
Интересующийся

ru
Offline Offline

« Ответ #29 : 22-01-2011 09:43 » 

ffobos,
>>еще как текстовые! все эти линии отрисованы готовыми сегментами

я и сказал, что всё текстовое. Но юзеру то, извиняюсь, глубоко насрать на это - у него линии и окошки Улыбаюсь
извеняюсь четал в спешке не внимателен был
Записан
Страниц: [1] 2  Все   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines