- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
#include <gtk/gtk.h>
int main(int argc, char *argv[], GtkWidget* vbox) {
GtkWidget *window;
gtk_init(&argc, &argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
gtk_window_set_default_size(GTK_WINDOW(window), 450, 700);
gtk_window_set_title(GTK_WINDOW(window), "Model Viewer (Version 36)");
//test();
menubar(window);
opengl(window);
gtk_widget_show_all(window);
gtk_main();
return 0;
}
Kozel 18.04.2016 09:41 # +1
someone 18.04.2016 10:12 # +6
Dummy00001 18.04.2016 11:58 # +4
myaut 18.04.2016 13:51 # +3
Так что подменить его и будет вам main() с желаемым прототипом.
(да, я знаю про зеленый текст, просто я зануда)
inkanus-gray 18.04.2016 14:11 # 0
Хуже если наоборот, crt1.o вызывает main всего с двумя аргументами, а в нашей программе сигнатура main содержит GtkWidget* vbox. Тогда только Царь знает, куда указывает vbox.
Bobik 18.04.2016 16:27 # +4
Dummy00001 18.04.2016 17:58 # +1
на самом деле там в компилере/линк скриптах есть магия которая в зависимости от прототипа main() генерит его правильный вызов, с правильным количеством аргументов.
по крайней мере раньше (pre C89?). потому что `void main()` было тоже разрешено, и компилер всовывал туда еще `exit(0)`, дефолтный код выхода. но похоже это больше не поддерживается, так как С стандарт больше `void main()` не разрешает.
где-то и читал, и в прошлом `void main()` видел.
bormand 18.04.2016 18:36 # +3
Зато он гораздо более ужасную вещь разрешает - int main() без return...
Dummy00001 18.04.2016 18:49 # +2
то ли гцц это не умеет, то ли фиг его знает, но возврат из майна это результат последней операции. типа `int main() { printf("\n"); }` выйдет с кодом 1 (потому что printf() возвращает 1 потому что один символ выводит.)
bormand 18.04.2016 18:51 # 0
Там, емнип, от -std= очень сильно зависит. На каких-то стандартах - 0, на каких-то - UB, как и в обычных функциях (та самая единичка, затесавшаяся в eax после printf).
Только вот с каким стандартом чо - не помню. Поэтому я всегда что-нибудь возвращаю, ибо нехуй...
bormand 18.04.2016 18:57 # 0
-std=c89 => UB
-std=c90 => UB
-std=c99 => 0
bormand 18.04.2016 19:04 # +1
Dummy00001 18.04.2016 19:12 # 0
ЗЫ да, версии стандарты я не догадался подёргать.
bormand 18.04.2016 19:14 # +2
Который мирно жил с UB'ом десятилетиями, пока в C99 эту срань не узаконили...
Имхо, не та проблема, которая предвещает много сражений. При сборке говнософта достаточно было бы добавить одну строку в конец main'а. Всё.
Выпилили же в конце-концов говнофичу с мутабельными строковыми литералами, никто особо и не возмущался (хотя я своими глазами видел софт, который эту говнофичу абузил)...
Dummy00001 18.04.2016 19:21 # +2
если pre-ANSI конпилеры это обрабатывали - то оно не было UB. понятие UB появилось только после стандартизации.
я этой фишкой проникся на Perl5 vs Perl6. Perl6 это стандарт, а Perl5 - это реализация. Если в Перл5 что-то не работает/работает загадочно официальный ответ "смотреть в код". Для Перл6 - "смотри в стандарт, и открывай баги для твоей конкретное реализации."
3_14dar 18.04.2016 21:19 # 0
3.14159265 18.04.2016 22:39 # +9
3_14dar 18.04.2016 22:47 # −5
guesto 18.04.2016 22:16 # +1
живой программист на перл в 2016м году
3_14dar 18.04.2016 22:46 # −3
guest 18.04.2016 23:06 # 0
жалко что на нем сейчас 0 вакансий, 0 проектов и 0 человек им пользуется
guest 18.04.2016 23:07 # 0
https://spb.hh.ru/vacancy/16448792?query=perl
defecate-plusplus 18.04.2016 23:24 # 0
жж написан на перле
много всякой широкоиспользуемой или сложно-подменимой дряни типа otrs, bugzilla написано на перле
guest 18.04.2016 23:29 # 0
ну вон кое-что и на Коболе написано в бизнесе-то)
а зачем багзила? Ишью треккеров сейчас как грязи же
defecate-plusplus 18.04.2016 23:31 # 0
сравнивая одно с другим, могу ответственно заявить - всё говно кроме мочи
guest 18.04.2016 23:33 # 0
Я кушал Jira, кушал Mantis и Yourkit.
Еще думал bugtrack попробовать.
В общем я согласен с тем что все говно.
defecate-plusplus 18.04.2016 23:35 # +3
guest 18.04.2016 23:37 # 0
defecate-plusplus 18.04.2016 23:43 # 0
много кликать надо, чтобы состояние задачи изменить
групповое редактирование отсутствует
спасибо хоть есть интеграция с гитом, может иногда поллить хранилище и менять статус ошибок, когда встречает в коммитах ключевые слова (а иногда может виснуть к ебеням на этой операции)
вот всё времени нет в отделе автоматизировать перевод кучи задач (багов) из состояния в состояние при сдаче релиза в тестирование, а уж о том, чтобы бюрократизировать учет рабочего времени, или хотя бы ведение всех задач проекта в нём и речи нет - если инструмент тормозит рабочий процесс, то он просто не выживает
kerman 19.04.2016 01:29 # 0
defecate-plusplus 19.04.2016 07:13 # 0
kerman 19.04.2016 10:18 # 0
1. В редмайне есть контекстное меню, много кликать не надо, чтобы состояние задачи поменять. Кстати, это же и групповое редактирование. Если из самого таска, то есть плагины, вроде этого: https://www.redmine.org/plugins/issue_hot_buttons
2. У редмайна очень простая и понятная структура БД. Автоматизируется там всё, что угодно, и как угодно, такая банальность, как автоматический перевод из статуса в статус вообще за три минуты делается.
3. Любая бюрократия тормозит рабочий процесс. А уж делать из редмайна учёт рабочего времени... Мне кажется, что вы там упоролись... Впрочем, можно плагины поискать, вдруг уже кто-то до вас так же упоролся.
defecate-plusplus 19.04.2016 10:35 # 0
ну вот видишь, не спросил бы, и не узнал о таком
он даже кастомные поля умеет группой дрочить!
спасибо добрый человек
> А уж делать из редмайна учёт рабочего времени
был у нас один исполнительный директор
пытался заставить вести весь учет в редмайне, а также считать косты по кокомо, которого он переработал на предыдущей работе
но, как грицца, если коллектив плюнет в тебя, ты утонешь
3_14dar 18.04.2016 23:27 # 0
P.S. А в рашке уже вторник.
guest 18.04.2016 23:35 # 0
под Jira надо много буков на джаве писать (вооюще не люблю атласин) под йоркит вообще на их собственном DSL:)
Dummy00001 19.04.2016 00:02 # 0
guest 19.04.2016 00:15 # +1
ну да, однострочники писать когда седа и авка мало
тащемто он для того и делался: чтобы логи парсить. Ларри не виноват что потом какие-то упыри начали на нем делать веб-приложения и писать сложную бизнес-логику
Dummy00001 19.04.2016 00:21 # 0
guest 19.04.2016 00:29 # +1
синтаксис через жопу
да это же джаваскрипт!!!
3_14dar 19.04.2016 15:06 # +1
myaut 18.04.2016 22:20 # 0
Antervis 22.04.2016 11:22 # 0
bormand 22.04.2016 18:17 # 0
> не может стать хуже
От узаконенного говна лучше язык уж точно не стал.
Antervis 23.04.2016 00:01 # 0
guest 23.04.2016 00:17 # +3
3.14159265 18.04.2016 22:35 # 0
> где-то и читал, и в прошлом `void main()` видел.
Да, было такое. Очень давно. Вообще много всякой хрени было
main()
main(void)
void main()
void main(void)
int main(void)
Чего никогда не видел, так это:
auto main(void)
Antervis 22.04.2016 11:28 # +4
да и вообще есть шанс что ребята, пришедшие из других яп будут делать что-то вроде
3.14159265 22.04.2016 13:09 # +3
Bobik 19.04.2016 00:30 # +2
https://github.com/lattera/glibc/blob/master/csu/libc-start.c#L87
Никакой магии линковщика нет, main всегда такой.
Возможно, на платформах, где ABI не допускает забивать на последние аргументы, магия действительно происходит.
j123123 19.04.2016 03:57 # 0
Только в линуксах нифига не cdecl
Dummy00001 18.04.2016 14:14 # +1
ваша информация устарела. systemd заменит libc своей встроенной версией уже начиная с версии 244. bash - с версии 258. GNOME - с версии 268. само собой разумеется начиная с этой версии KDE/Qt/этц приложения больше не будут поддерживаться.
guesto 18.04.2016 15:29 # +2
systemctl launch postgres.applicatio
Dummy00001 18.04.2016 16:42 # +1
как только systemd дойдёт до поглощения gcc. sendmail.cf путь указал. писаться все будет на Valа и GCC будет это в набор .ini/.application переводить. зато секурити - потому что никаких тебе буффер оверфлоу. ;-)
guesto 18.04.2016 16:49 # 0
bormand 18.04.2016 18:37 # 0
guesto 18.04.2016 15:47 # +6
3_dar 18.04.2016 17:20 # 0
bot 18.04.2016 21:27 # +4
Если хочешь править миром - пиши конпеляторы, %abusername%. Чем больше конпеляторов напишешь - тем больше ты правишь миром.
Я всё сказал, наверное.
kerman 19.04.2016 01:32 # 0
Antervis 22.04.2016 11:29 # 0