Всем привет!!! Только начал изучать Builder С++. Поэтому появился простенький вопрос но сам разобраться не могу. Подскажите как из FindDialog->FindText выташить первый символ.
Доброе время суток, Ilu! FindDialog1->FindText.SubString(1,1); - это и есть первый символ Ответ отправлен: 10.08.2003, 22:37 Отправитель: Bobs Отвечает BOLT
Добрый день, Ilu! Вот так: char pervii_simvol = (char)FindDialog1->FindTextA.c_str()[0]; Ответ отправлен: 10.08.2003, 23:26 Отправитель: BOLT
Вопрос № 992
Уважаемые эксперты, Вероятно, мои вопросы вызовут «сильное оживление» в ваших профессиональных рядах, но «чайники» бывают разные…. Недавно решил начать осваивать язык C++. Прочел (это истина) несколько разных материалов. Про первую программу «hello, world», про принципиальную структуру программы, про обязательную функцию main (),про строковые и другие переменные и т.д.Это я понял. Не понял я некоторых «важных моментов», а именно: в каком редакторе надо набирать текст программы? Если это файл текстовый, то, как он становится (или как его «сделать») исполняемым. Поэтому просьба 1.Кратко описать, в условиях, например, WinXP,только процедуру превращения текста будущей программы «hello, world» в исполняемый файл (exe,com или еще какой, результатом которого будет
вывод на дисплей этих столь многозначительных символов). 2. Правильно я понимаю, что этот язык программирования не требует загрузки специальной операционной системы, кроме Windows Заранее спасибо, Евгений
Доброе время суток, Евгений! Для каждого языка программирования существуют программы компиляторы (ассемблеры), трансляторы. Исходники обычно представляют собой текстовые файлы, которые в трансляторе разбиваются на логические деревья и записи. Из таких записей и получается объектный модуль. Он попадает в компилятор (ассемблер) и преобразовывается в исполняемый модуль (.ехе, .сом) Для ВинХР тебе надо Microsoft Visual Studio или C++ Builder, но лучше Microsoft Visual Studio. Ответ отправлен: 11.08.2003, 14:02 Отправитель: Nevsky Отвечает Bobs
Здравствуйте, Евгений! :) Правильно. Для этого желательно установить один из существующих компиляторов C++, в комплекте с которыми обычно имеется и интегрированная среда разработки. Наиболее популярен сейчас MS Visual C++ 6.0. Существуют также: Borland C++ Builder, GNU C Compiler, Watcom C++ Compiler, Intel C++. Так что бегом на рынок/в магазин за необходимым (и, главное, непременно лицензионным :)) софтом. После этого обращайтесь опять, поможем разобраться. P.S. Не стоит покупать диски типа "Все компиляторы C++", обычно на них дистрибутивы обрезанные и без документации. Я лично разорился на шестидисковый вариант MS Visual Studio .NET. Ответ отправлен: 10.08.2003, 22:47 Отправитель: Bobs Отвечает BOLT
Доброе время суток, Евгений! Да... поистине чайники бывают разные, даже очень разные(особенно меня рассмешил 2-й пункт)... но это не страшно, ведь мы тоже не рождались хакерами!  s  Итак, чтобы "превратить"(а правельно будет откомпилировать) исходный текст программы(текстовый файл - *.C, *.CPP, *.H и т.п.) в исполняемый модуль, нужно воспользоваться компилятором. Но это не все. Компелятор скомпелирует, если не будет ошибок в исходном коде, объектный файл(*.OBJ), который линкуем линковщиком и получаем, наконец, исполняемый модуль(*.EXE). Все это может автоматезировать среда разработки приложений(IDE) 1)Используй среду разработки, т.к. для новичка так легче. Рекомендую две системы мирового маштаба:  s  а)Borland C++ Builder  s  б)Microsoft Visual C++ желательно последних версий: Borland C++ Builder 6.0 (полная версия
на 5 дисках) Microsoft Studio.NET (полная версия на 5 дисках и содержит VBasic, VC++, C# и т.д.) Но если не хочешь заморачиваться, то используй Borland Turbo C++ 3.0 - старинная среда разработки приложений для DOS, компилятор соответственно такой же древний, но для обучения пойдет.
Ответ отправлен: 11.08.2003, 15:16 Отправитель: BOLT Отвечает Twilight_Sun
Доброе время суток, Евгений! Я лично начинал знакомство с С и С++ со средой разаработки ТС 3.0 (Turbo C 3.0, под ДОС такая, на 2 дискеты влазит), там сразу и компилируется всё в ехе по F9. В принципе сейчас под ДОС мало кто пишет, но обучатся, ИМХО, так удобней, нету всяких сложностей и наворотов.
Приложение: Ответ отправлен: 11.08.2003, 14:49 Отправитель: Twilight_Sun Отвечает vitya
Доброе время суток, Евгений! как я понимаю спец образования у вас нет никакого. Соответственно советую - прочесть пару книжек по устройству компьютеров и ОС. Для того, чтобы исходный код прдевратить в программу надо ее откомпилировать в компиляторе. Под Windows советуется MSVisualC++ версий 6 и 7. Ответ отправлен: 11.08.2003, 09:04 Отправитель: vitya
Вопрос № 993
Здрасвуйте експерты Я с коментариями по поводу вопросу "981" Кароче, я попробывал все рарянты и от шо у меня получилось: - поробывал совет Avl2k и нечиво хорошого не произошло - воспользывался функцыей fgets по совету vitya и RedFox етот варянт ещо хуже преведущего, помоему я зделал все правильно незнаю может у меня руки кривые или ещо шота. Вобщето я Паскаль хорошо знаю но на нем курсак уже написал, "С" осталось то там была такая функцыя Readln.
RedFox ты там заикался за функцыю read, для меня она неудобная потомушто я незнаю скоко у меня символов в строке, если ты можеш написать мне функцыю буду очень благодарен. Может вы уважаемые знатоки ещо подумаете на ету тему ?...
Приветствую Вас, ol! Я тут кое-что пропустил... Я так понял, тебе нужна функция аналог паскалевского readln(string)? Ну тогда могу предложить только такой способ для С: char buffer[259]; //задаем буффер для строки char * str; //указатель на строку str1[0] = 257; //задаем макс вводимых символов str = cgetc(str1); //получаем строку(здесь ты вводишь) все, твоя строка находится в памяти, куда указывает str Могу тебя заверить, что это точно также работает как оператор readln() в паскале, даже чуть быстрее! Ответ отправлен: 11.08.2003, 17:09 Отправитель: BOLT Отвечает Yuri Gordienko
Доброе время суток, ol! лови описалово fread, ИМХО наиболее оптимальный вариант -Функция:size_t fread (void *data, size_t size, size_t count, FILE *stream) Эта функция читает до count объектов размера size в массив. Она возвращает число прочитанных объектов, которое может быть меньше чем count, если происходит ошибка чтения, или достигнут конец файла. Эта функция возвращает значение нуль (и ничего не читает) если или size или count равен нулю.
Если fread достигает конца файла в середине объекта, она возвращает номер прочитанных полностью объектов, и отбрасывает несчитанные до конца.
Ответ отправлен: 11.08.2003, 12:45 Отправитель: Yuri Gordienko Отвечает Avl2k
Доброе время суток, ol! Уточните, что конкретно не работает. Может быть Вы забыли прочитать сами символы конца строки? На всякий случай :) - вот пример. Так как открываем файл в текстовом режиме, то ставим просто "\n" вместо "\r\n": #include <stdio.h> int main() { struct a { char a1[100]; char a2[100]; char a3[100]; } t; FILE* file = fopen( "test.txt", "r" ); if( file ) { fscanf(file,"%[^\n]\n", &t.a1); fscanf(file,"%[^\n]\n", &t.a2); fscanf(file,"%[^\n]\n", &t.a3); fclose( file ); } return 0; } --------------------------------------------------- test.txt This is line #1 This is line #2 This is line #3 С уважением, Avl2k.
Ответ отправлен: 11.08.2003, 15:35 Отправитель: Avl2k Отвечает RedFox
Доброе время суток, ol! Вышли свое мыло на мое (redfox_csl@tut.by), вышлю функцию. А насчет fgets - я же писал, там последний символ - это символ перевода строки; удаляй его и получишь чистую строку.
Ответ отправлен: 11.08.2003, 11:27 Отправитель: RedFox
Вопрос № 994
Как мне используя MFC проиграть avi-файл. С помощью класса CAnimateCtrl ничего не получается. В Win98 и Win2000 одинаково безрезультатно.Открывал файл по имени и по ID из ресурса. Заранее благодарю.
Приветствую Вас, root! Поставь на форму ActivX component (MediaPlayer), там в пропертисах много настроек.
Ответ отправлен: 11.08.2003, 14:07 Отправитель: Nevsky Отвечает BOLT
Здравствуйте, root! У меня все получается с помощью класс CAnimateCtrl. Я делал вот так:
Video.Open("C:\Windows\Clock.avi"); //открываем нужный файл Video.Play(0, -1, -1); //Проиграть файл начиная с //первого фрейма до //последнего бесконечное //кол-во раз
Да прибудет с тобой Великая Сила!
This message was created by EMan1.4
Ответ отправлен: 12.08.2003, 11:53 Отправитель: BOLT
Вопрос № 995
Где бы можно достать исходники для нарезчика болванок, или хотябы описание команд для пишуших Cd-rom-ов.
Добрый день, DDMZ! Могу посоветовать посмотреть программы типа cdrecord - это под линукс, но с исходниками, и возможно, хоть ухватишься за что нибудь Успехов Ответ отправлен: 11.08.2003, 12:57 Отправитель: Yuri Gordienko
Вопрос № 996
Здравствуйте, уважаемые! Подскажите, пожалуйста, как в Visual C++ без использования MFC во время выполнения вывести строчку в окно Output?
Здравствуйте, Алексей! В файле <crtdbg.h&rt; определены стандартные макросы для отладки. Для вывода строки пользуйтесь _RPT0, _RPT1 ..., а также _RPTF0, _RPTF1, ... Если надо чисто на WinAPI :), то пользуйтесь функцией OutputDebugString. Пример: #include <Windows.h> #include <crtdbg.h> int main() { _RPT0( _CRT_WARN, "Alarm!
" ); OutputDebugString( "ttt" ); return 0; } С уважением, Avl2k. Ответ отправлен: 11.08.2003, 13:17 Отправитель: Avl2k Отвечает Маслов Андрей
Здравствуйте, Алексей! Ну прямо таки как просто... Поюзай какой-нибудь поток... И покопайся в свойствах Ответ отправлен: 11.08.2003, 17:45 Отправитель: Маслов Андрей Отвечает BOLT
Доброе время суток, Алексей! Могу посоветовать только это: VOID OutputDebugString( LPCTSTR lpOutputString // строка для вывода в окне отладки );
Да прибудет с тобой Великая Сила!
This message was created by EMan1.4
Ответ отправлен: 12.08.2003, 11:55 Отправитель: BOLT
Форма отправки вопроса
Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+
или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.