Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по программированию на C/С++

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322

Открыть новую тему     Написать ответ в эту тему

Crazy_Shrike



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Вопросы по программированию на C/С++

 
  • Справочники, книги
  • Выбор IDE (среды программирования)
     
    Постарайтесь дать как можно больше информации о возникшей проблеме - это в конце концов в ваших же интересах чтобы вам помогли.

    Решения конкретных задач собираются и обсуждаются в теме Задачи по C/С++ .

    Прежде чем просить помощи в задании...
    Если позарез надо и вы даже готовы заплатить

    Как правильно задавать вопросы, если вы хотите получить ответ.

    Полезные ссылки:
    C++(eng)

  • Всего записей: 241 | Зарегистр. 25-03-2004 | Отправлено: 13:37 06-05-2004 | Исправлено: AZJIO, 19:45 12-05-2014
    SuperDimon007



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    А можно на C++ сделать динамическую функцию типа такой:

    Код:
     
    int a = 1;
    b = function(int a) {return a+10;};
    int c = b(a);
     

    Всего записей: 51 | Зарегистр. 12-06-2012 | Отправлено: 19:12 01-11-2013
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    SuperDimon007

    Код:
    typedef int ( *my_func_type )( int );
     
    int func( int a ) { return a + 10; }
     
    ...
     
    int a = 1;
    my_func_type b = func;
    int c = b( a );
     


    ----------
    0 программистов ругал сердитый шеф
    Потом уволил одного, и стало их FF

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 19:40 01-11-2013
    BagaBaga

    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    А можно на C++ сделать динамическую функцию типа такой:
     
     
    int a = 1;
    b = function(int a) {return a+10;};
    int c = b(a);
     
     

     
    Если С++11, то можно проще (через лямбды)
     

    Код:
     
    auto func = [](int n) { return n +10; };
    int my_val = func(20);
     


    Всего записей: 463 | Зарегистр. 14-11-2005 | Отправлено: 21:23 01-11-2013
    Aktaf



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Ранее уже обращался начиная тут:
    http://forum.ru-board.com/topic.cgi?forum=33&topic=3174&start=4400#14
    В последующем все проблемы решил и до сих пор проделал ряд работ.
    Теперь у меня просьба Программистам, я изменил расположения настроек одном окне в Вертуал Дабе, чтобы было более понятным для пользователей. Но, если до сих пор никого не смущал, теперь стали задавать вопросы. В принципе справедливый, хотя до сих пор никого это не смущало. Чтобы легче задать и понять о чем. Это было в начале:
    http://i58.fastpic.ru/big/2013/1113/bf/5100c901a4cc7e698aaca614f087adbf.jpg
    А это после изменени:.
    http://i58.fastpic.ru/big/2013/1113/df/d8c77c7a5bc8400acc60fdd6943cdcdf.jpg
    Опцию - "Перевод в:..." перенес в первый раздел - "Регулировка входной частоты".  
    Каждая опция меняли только по одной. Если в первом разделе меняем, то во втором не трогаем или наоборот. А внутри разделов менять сразу в двух, программа не позволяет.
    Теперь, в первым разделе, новую опцию можно выбирать вне зависимости от выбора "новой" опции. Как мне их ограничить, где  в исходнике искать? Как называться эта возможность в файлах исходника - установка точки?
    Спасибо.  

    Всего записей: 2807 | Зарегистр. 06-02-2003 | Отправлено: 18:13 13-11-2013
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Aktaf

    Цитата:
    Опцию - "Перевод в:..." перенес в первый раздел - "Регулировка входной частоты".

    А какой, собственно, смысл опцию регулировки выходной частоты переносить в раздел "Регулировка входной частоты", к которому она никакого отношения не имеет?

    Цитата:
    Теперь, в первым разделе, новую опцию можно выбирать вне зависимости от выбора "новой" опции.

    Это как?

    ----------
    0 программистов ругал сердитый шеф
    Потом уволил одного, и стало их FF

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 18:58 13-11-2013
    V0lt



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Aktaf
    Не надо ничего менять в этом окне.
     
    Вот более правильный перевод:

    Картинка сделана из VirtualDub pack rev.12 Русская версия.

    Всего записей: 10501 | Зарегистр. 05-02-2003 | Отправлено: 19:53 13-11-2013 | Исправлено: V0lt, 19:53 13-11-2013
    Aktaf



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    V0lt
    Спасибо большое. Теперь все стало логичным. А вопрос оказался не по теме.
    Раз уж завел, то чтобы закончить. Я стал переделывать не ради перевода в другой раздел, а ради того чтобы указать - "Перевод в: ____ кадр/сек, вместе с аудио.
    Теперь найду выход. Но вопрос, правильно ли сделал эту строчку?
    Просто, люди часто ищут эту возможность, на мой взгляд так подсказка?
    А эту опцию - Перевод в: ____, вместе с другими изменениями в верхнем разделе можно ли использовать?
    Установить:
    "Изменять аудио и видео для совпадения длины" (эту даже не знаю, без рассинхрона наверно можно только при не большой разницы? Никогда не пробовал).  
    И еще не так ли должно переводиться примечание: "Примечание: Смена кадров приведет к рассинхронизации аудио/видео" (тогда скорее предупреждение).

    Всего записей: 2807 | Зарегистр. 06-02-2003 | Отправлено: 20:40 13-11-2013 | Исправлено: Aktaf, 20:50 13-11-2013
    kvazigorynich

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Кто-нибудь может подсказать с вот каким вопросом.
     
    Собираю под msys. Исходники имеют расширение с. Так вот для того чтобы правильно собрались под виндой мне их надо переименовать в *.cpp. В makefile изменил расширения исходных файлов на cpp. Но командой make объектные файлы из этих cpp не генерятся.
     
    Еще заменил такую конструкцию
     
    OBJS1 = ${SRCS:.c=.o}
    на
    OBJS1 = ${SRCS:.cpp=.o}
     
    Что еще надо сделать?
     
    Или может кто подскажет как сделать так чтобы компилятор воспринимал код как С++? А то он начинает тупить на этих файлах и конструкции типа extern ему не нравятся.
     
    Вот такую ошибку выдает.
     

    Код:
    error: expected identifier or '(' before string constant

    Всего записей: 794 | Зарегистр. 06-09-2007 | Отправлено: 18:38 17-11-2013 | Исправлено: kvazigorynich, 19:25 17-11-2013
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    kvazigorynich
    Так а язык-то какой на самом деле в этих файлах, C или C++? Разбор синтаксических конструкций языка, в общем-то, от системы не зависит. Может, загвоздка всё-таки в чём-то другом?

    ----------
    0 программистов ругал сердитый шеф
    Потом уволил одного, и стало их FF

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 19:58 17-11-2013
    kvazigorynich

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
     
    Язык с++. Когда изменил расширение файла на cpp, он нормально собрался.
     
    А dll'ка не собирается. Когда я сменил расширение файлов необходимых для ее сборки на cpp, то dll собирается без тех функций что в этих cpp файлах находятся. Т.е. они как будто не учитываются при ее создании.
     
    Изначально приложение создано под никсы. А я его в виндах собрать пытаюсь.

    Всего записей: 794 | Зарегистр. 06-09-2007 | Отправлено: 20:06 17-11-2013
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    kvazigorynich
    В линуксовых приложениях обычно в комплекте идёт скрипт конфигурации, который и генерирует нужный makefile под используемый компилятор и систему. Все дополнительные настройки делаются через командную строку этого скрипта. Что за приложение-то?

    ----------
    0 программистов ругал сердитый шеф
    Потом уволил одного, и стало их FF

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 20:16 17-11-2013
    kvazigorynich

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
     
    Я использовал скрипт. Но как я прочел, gcc вроде как по расширению файла пытается понять что его ждет внутри файла. Это косвенно подтверждается тем что при смене расширения, ехе собрался. Причем я ничего больше не менял. Только сменил расширение.
     
    Буду разбираться.

    Всего записей: 794 | Зарегистр. 06-09-2007 | Отправлено: 20:34 17-11-2013
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    kvazigorynich
    Все C/C++ компиляторы по умолчанию определяют язык по расширению файла. И всем им явно можно задать язык соответствующей опцией при компиляции. Для gcc это опция "-x имя_языка", насколько я помню.

    ----------
    0 программистов ругал сердитый шеф
    Потом уволил одного, и стало их FF

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 21:03 17-11-2013
    kvazigorynich

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
     
    Я как раз про опцию эту и спрашивал. Я видимо не с той стороны к поиску решения подошел.
     
    Спасибо за ответ.

    Всего записей: 794 | Зарегистр. 06-09-2007 | Отправлено: 21:21 17-11-2013
    V1s1ter



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Простите если кто-то посчитает это офтопом, но я не уверен что этот вопрос только Qt может он вообще лежит в области построения проектов в С/С++.
    Пробую собрать библиотеку Qt3D в QtCreator, qmake отрабатывает без ошибок, но вот jom ругается

    Код:
    C:\qt\qt-qt3d\src\threed\painting\qglabstracteffect.h(45) : fatal error C1083:  Qt3D/qglpainter.h: No such file or directory
    jom: C:\Qt\Qt3D\src\threed\Makefile.Release [.obj\release_shared\qglabstracteffect.obj] Error 2

    Говорит виновна строка

    Код:
    #include <Qt3D/qglpainter.h>

    Я так понимаю у меня не верно инициализирована переменная Qt3D, но где и как ее прописать я не знаю. Так же не знаю где прописаны подобные переменные в "чистом" Qt например в файле qprinter.h:

    Код:
    #include <QtCore/qstring.h>
    #include <QtCore/qscopedpointer.h>
    #include <QtGui/qpagedpaintdevice.h>
    #include <QtPrintSupport/qtprintsupportglobal.h>
     

    На QtCore, QtGui, QtPrintSupport компилятор не ругается, но где они инициализированы я не нашел. Да в построенном разработчиками пакете такие папки есть на C:\Qt\Qt5.1.1\5.1.1\msvc2010_opengl\include. Но ведь это уже построенная библиотека, а как же ее собирали если в исходниках те же "инклюды", а папок с именами QtCore, QtGui, QtPrintSupport ... нет?  
    Подскажите куда смотреть, как быть.

    Всего записей: 948 | Зарегистр. 06-02-2007 | Отправлено: 03:05 28-11-2013
    kkuuhhaa

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Хочу взять функцию BZ2_bzBuffToBuffDecompress из bzip2. Программа собралась, но "ошибка при запуске 0x7b". Мало того, что этот модуль не ищется в bzip2.lib, так от ещё указан для поиска (из dumpbin) не в библиотеке, а в bzip2.exe Можно ли "отвязать" программу от dll или как сделать правильно

    Всего записей: 131 | Зарегистр. 14-05-2008 | Отправлено: 20:12 04-12-2013 | Исправлено: kkuuhhaa, 22:40 04-12-2013
    ne_viens

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Можно код bzip'a скомпилировать в прогу:

    Код:
     
    // cl test.c bzlib.c compress.c decompress.c crctable.c randtable.c huffman.c blocksort.c
    #include <stdio.h>
    #include <stdlib.h>
    #include "bzlib.h"
     
    char test[] = "thisisjustatest";
    main()
    {
        int len;
        char buf[0x100], buf2[0x100];
        
        len = sizeof(buf);
        BZ2_bzBuffToBuffCompress(buf, &len, test, sizeof(test), 5, 0, 0);
        BZ2_bzBuffToBuffDecompress(buf2, &len, buf, len, 0, 0);
        puts(buf2);
    }
     

    Всего записей: 1530 | Зарегистр. 01-11-2004 | Отправлено: 23:32 04-12-2013
    kkuuhhaa

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ne_viens
    Спасибо. Странно, когда в таком виде - нормально, а когда подключаю библиотеку test.lib получается облом. Как отключить создание библиотеки? И ещё. неужели нельзя заранее узнать в bzip2 размер разархивированного файла?

    Всего записей: 131 | Зарегистр. 14-05-2008 | Отправлено: 10:48 05-12-2013 | Исправлено: kkuuhhaa, 11:56 05-12-2013
    ne_viens

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    В каком смысле отключить создание?
    Просто не создавать и всё (не выполнять команду lib test.obj bzlib.obj ...).

    Всего записей: 1530 | Зарегистр. 01-11-2004 | Отправлено: 11:29 05-12-2013
    kkuuhhaa

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ne_viens
    Обычно компиляция на выходе даёт .obj и .exe. Если же запускаю код с api bzip2, то зачем-то дополнительно Создаётся библиотека .lib и объект .exp. Доп. ключей нет, не заказывал этого.

    Всего записей: 131 | Зарегистр. 14-05-2008 | Отправлено: 13:08 05-12-2013
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 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 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322

    Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по программированию на C/С++


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru