Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Помощ в написании ?


Автор: denes 5.9.2010, 12:32
Скажите есть программы для помащи написания программ так чтобы ошибки выявляли или писали как нужно и т.д. ?  smile 

Автор: jonie 5.9.2010, 12:38
denes, конечно есть. Ведь уже давно изобретен искусственный интеллект по типу как в матрице. А вы не пользуете до сих пор чтоли?

Автор: xvr 5.9.2010, 13:26
ТС могу для начала порекомендовать spell checker

Автор: Modul 5.9.2010, 13:35
Самое лучшее - это мозг !  smile 

А для планирования - псевдокод.

Для поиска ошибок вручную - дамп данных.

Пишите на бумаге, очень помогает для решения задачи.

Автор: azesmcar 5.9.2010, 17:10
Цитата(denes @  5.9.2010,  12:32 Найти цитируемый пост)
Скажите есть программы для помащи написания программ так чтобы ошибки выявляли или писали как нужно и т.д. ?  smile  

Visual Assist X

Добавлено через 45 секунд
это конечно если речь идет о синтаксических ошибках, если нет - смотри пост jonie.

Автор: denes 5.9.2010, 17:20
Туфта кокаято я прогу просил а не правельно писание !

Автор: Sturmvogel 5.9.2010, 18:17
Парень, тебе подробно ответили на твой вопрос, а если ты не в состоянии сам написать качественный код и его отладить, то программирование явно не для тебя. Надо искать не программу, которая за тебя код писать будет, я досконально выучить синтаксис языка.

P.S. Освежить знание русского языка тебе тоже не помешает. 

Автор: Леопольд 5.9.2010, 19:45
denes, видимо такой какую надо пока ещё никто не написал. Эта нива пока ещё не пахана. Так что пишите, конкурентов нет...

Автор: borisbn 6.9.2010, 06:17
denes, в правилах форума сказано
Цитата

Все сообщения пишутся на русском языке

А по теме: visual assist X

Автор: Alexeis 6.9.2010, 08:52
  Есть также целый класс программ, анализаторов кода, которые выявляют типичные потенциально опасные места/утечки памяти/переполнения буфера и т.д. Кроме того можно поднять уровень варнингов компилятора до максимума, тогда он будет указывать на слабые места в коде.

Автор: denes 7.9.2010, 17:26
Можно поднять уровень варнингов компилятора до максимума, это как сделать первый раз такое слвижу ?
а коректировать он и так корректирует когда запускаете прогу после написания ! smile  smile 

Автор: Alexeis 7.9.2010, 17:39
Цитата(denes @  7.9.2010,  16:26 Найти цитируемый пост)
это как сделать первый раз такое слвижу ?

  Опции компилятора С++ в свойствах проекта. Раздел может называться warnings или типа того.

Автор: priam220 7.9.2010, 19:11
пытаюсь написать программку, которая будет работать с чужим окном. Примеров в нете хоть отбавляй. Но чет ничего не работает. Представляю сдесь последний вариант. Впринципе прога компилится, нужное окно находится, но никак не получается жмакнуть по кнопке save или хот кей - нажатие S (как раз вот тут пытаюсь). Окно находится, но никакой реакции:
Код

#include <windows.h>
#include <stdio.h>

int main() {

    HWND hwnd;
    char p[100];
    char download_win_title[100] = "somthing";
    hwnd = GetDesktopWindow();
    hwnd = GetWindow(hwnd, GW_CHILD);
    while (hwnd != 0) {
        hwnd = GetWindow(hwnd, GW_HWNDNEXT);
        GetWindowText(hwnd, p, 100);
        int i=0;
        if (strlen(p) > 0 && strcmp(p, download_win_title) == 0) {
            printf("'%s'\n", p);
                SendMessage(hwnd, WM_KEYDOWN, 0x53, 0xE0770);
        }
    }
    return 0;
}

Что не так?

Автор: priam220 7.9.2010, 23:16
добавил такие строки, в целом работает, только в случае если окно в фокусе. Что в целом приемлемо, но хотелось бы более цивилизованно. Т.е. сделать его активным без выброса поверх всех окон. Был уверен, что SetActiveWindow(hwnd); поможет, но нет, что то не то. Кнопка селектается но не нажимается...

Код

            HWND Butn = FindWindowEx(hwnd, 0, "Button", "&Save");
            if (Butn > 0)
                                {
             SendMessage (Butn, BM_CLICK, 0, 0);
            }


Автор: denes 8.9.2010, 11:21
Ты там лишних скобок наставел !
и массывы странные ! это C++ или другой язык ?

Автор: priam220 8.9.2010, 13:10
Ну это скорее С чем С++.  Но суть не в этом. Скобки пусть тебя не смущают. Массивы тоже. Вопрос не вних.

Автор: priam220 8.9.2010, 16:00
В общем с поставленными вопросами я разобрался. Здесь представляю рабочий вариант кода:
Код

    while (hwnd != 0)
    {
        GetWindowText(hwnd, p, 100);

        if (strlen(p) > 0 && strcmp(p, download_win_title) == 0) {
            printf("'%s' window was found \n",p);
            HWND Butn = FindWindowEx(hwnd, 0, "Button", "&Save");
            if (Butn > 0){
             printf("'Save' button was found \n" );
             SetForegroundWindow(hwnd);
             Sleep(1000);
             SendMessage (Butn, BM_CLICK, 0,  0);
             break;
            }
        }
        hwnd = GetWindow(hwnd, GW_HWNDNEXT);
    }

Но как и бывает в природе, решение одной проблемы вызвало новый ряд вопросов. В данной реализации как видно, искомое окно вводится в фокус поверх других окон (SetForegroundWindow), что не совсем красиво. Тот же код с функцией setActiveWindow работать не хочет. 
Все-таки хотелось бы услышать знающего человека, возможно ли подобная работа с окном в режиме, когда оно не в фокусе. И если да, то почему не пашет в данном случае.

Автор: Artemon 14.9.2010, 21:00
Бред какой-то

Автор: denes 15.9.2010, 10:06
Не понял не фига на каком языке написан код ?  smile 

Автор: xvr 15.9.2010, 11:38
Цитата(denes @ 15.9.2010,  10:06)
Не понял не фига на каком языке написан код ?  smile

Самый классический, кондовый С++ (практически чистый С)

Автор: denes 21.9.2010, 22:18
у меня C++ и не разу не видел такова начала куда подевали библиотеки ?

Автор: xvr 21.9.2010, 22:27
Цитата(denes @ 21.9.2010,  22:18)
у меня C++ и не разу не видел такова начала 

Начало было вначале - http://forum.vingrad.ru/index.php?showtopic=309250&view=findpost&p=2208957
Цитата

куда подевали библиотеки ?
там остались, в начале  smile 

Автор: denes 25.9.2010, 11:41
#include <windows.h>
#include <stdio.h>

int main() {
Типа это начало я понял но скажите на кой вы пишите проги без начала  я когда пишу всегда встовляю вместе с библиотеками !
вы написали это :while (hwnd != 0)
    {
        GetWindowText(hwnd, p, 100);

        if (strlen(p) > 0 && strcmp(p, download_win_title) == 0) {
            printf("'%s' window was found \n",p);
            HWND Butn = FindWindowEx(hwnd, 0, "Button", "&Save");
            if (Butn > 0){
             printf("'Save' button was found \n" );
             SetForegroundWindow(hwnd);
             Sleep(1000);
             SendMessage (Butn, BM_CLICK, 0,  0);
             break;
            }
        }
        hwnd = GetWindow(hwnd, GW_HWNDNEXT);
    }
ну так сделайть всё вместе чо по честям то переносить не пойму для чего это вам лучше вместе так понятнее и не важно было это где или нет !

Автор: RedDigger 25.9.2010, 13:52
denis, разница в том, что написать проблемный участок намного быстрее и удобнее для стороннего читателя. Если допустить что проект несколько больше то для прочтения одной проблемы уйдет времени намного больше чем в данном случае... Тебе же советую сперва прочитать http://lib.ru/CPPHB/cpptut.txt.. Это библия программиста на C++. Прочитав ее ты сможешь определить ответы на множество вопросов сейчас и в будущем...

Автор: Chazer 30.9.2010, 16:10
Моё мнение:
http://ipicture.ru/Gallery/Viewfull/1368482.html
И пора давать предупреждения за неоднократное умышленное нарушение норм языка.

Автор: denes 12.8.2011, 11:31
Бесплатный хостинг фото и на кой мне это ?

Добавлено через 2 минуты и 42 секунды
priam220 вы не написали библиотеки и конец файла !  smile

Добавлено через 14 минут и 8 секунд
По поваду Бьерна Страуструпа    Книга написана Бьерном Страуструпом - автором языка программирования C++ - и является каноническим изложением возможностей этого языка. Помимо подробного описания собственно языка, на страницах книги вы найдете доказавшие свою эффективность подходы к решению разнообразных задач проектирования и программирования. Многочисленные примеры демонстрируют как хороший стиль программирования на С-совместимом ядре C++, так и современный объектно-ориентированный подход к созданию программных продуктов. Третье издание бестселлера было существенно переработано автором. Результатом этой переработки стала большая доступность книги для новичков. В то же время, текст обогатился сведениями и методиками программирования, которые могут оказаться полезными даже для многоопытных специалистов по C++. Не обойдены вниманием и нововведения языка: стандартная библиотека шаблонов (STL), пространства имен (namespaces), механизм идентификации типов во время выполнения (RTTI), явные приведения типов (cast-операторы) и другие. Настоящее специальное издание отличается от третьего добавлением двух новых приложений (посвященных локализации и безопасной обработке исключений средствами стандартной библиотеки), довольно многочисленными уточнениями в остальном тексте, а также исправлением множества опечаток. Книга адресована программистам, использующим в своей повседневной работе C++. Она также будет полезна преподавателям, студентам и всем, кто хочет ознакомиться с описанием языка `из первых рук`. 

Автор: Artemon 12.8.2011, 14:50
Цитата(denes @  12.8.2011,  11:31 Найти цитируемый пост)
Бесплатный хостинг фото и на кой мне это ?

Как на что, вдруг будут какие-то фотографии у тебя, вот выложишь их.


Цитата(denes @  12.8.2011,  11:31 Найти цитируемый пост)
priam220 вы не написали библиотеки и конец файла !

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


Цитата(denes @  12.8.2011,  11:31 Найти цитируемый пост)
По поваду Бьерна Страуструпа

Так получается это он язык C++ придумал ?

Автор: spyswamp 12.8.2011, 16:55
Я, конечно, не подстрекатель, но за такой явный троллинг банил бы...

Автор: denes 15.8.2011, 20:23
да жуть кокаято всё не правельно написали !!!

и библиотеки я дал :#include <windows.h>
#include <stdio.h>

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)