Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

RE: Вопросы по C/C++ (Для новичков)

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Компилируемые языки] >> RE: Вопросы по C/C++ (Для новичков)
Имя
Сообщение << Старые топики   Новые топики >>
RE: Вопросы по C/C++ (Для новичков) - 2011-04-07 12:45:40.433333   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
quote:

ORIGINAL: GazKerosin
можно ли в MS выстроить связи и зависимости между файлами?..

Поясни процитированное. Тебе нужны "связи" в майкрософте?

Насчёт готовых тулзов не знаю, зависит от билд системы. А вообще, открывай .cpp файлы и смотри, где и как инклюдаются .h файлы.
Post #: 2121
RE: Вопросы по C/C++ (Для новичков) - 2011-04-07 18:11:49.946666   
GazKerosin

Сообщений: 348
Оценки: 0
Присоединился: 2010-02-01 18:14:52.200000
Вот этого я и хочу, чтобы он отображали эти связи. Файлов порядка 600 штук, и самому выставлять связи - дело немного муторное…
Post #: 2122
RE: Вопросы по C/C++ (Для новичков) - 2011-04-07 19:56:04.356666   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Зачем?
Post #: 2123
RE: Вопросы по C/C++ (Для новичков) - 2011-04-08 00:17:44.506666   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
quote:

ORIGINAL: GazKerosin
Вот этого я и хочу, чтобы он отображали эти связи. Файлов порядка 600 штук, и самому выставлять связи - дело немного муторное…

У gcc есть какая-то опция, при которой он перебирает все .c/.cpp файлы, и выписывает депендансы. Но там только о include'ах идёт речь. То есть, если в каком-нибудь .c файле есть объявление `extern int hidden_global;', то gcc не отследит зависимости этого файла от того, который собственно определяет эту переменную.
Вероятно у майкрософтовского компилятора тоже есть в списке опция генерация депендансов. Если же нету, возьми gcc, сгенери эти депендансы (они будут в формате для GNU make, который легко распарсить чем угодно), а потом попытайся сконвертировать в формат понятный студии.
Кстати, если файлов порядка 600, то скорее всего депендансы уже прописаны в каком-нибудь makefile'е. Правда их может быть сложно извлечь оттуда. И может быть, эти депендансы не полные, лишь то, что надо для сборки с нуля. Но может быть, что извлечь оттуда депендансы просто, и депендансы прописаны вообще все. Так что ты глянь… А вдруг.
Post #: 2124
RE: Вопросы по C/C++ (Для новичков) - 2011-04-13 21:28:54.450000   
ClickMouse_.!.

Сообщений: 18
Оценки: 0
Присоединился: 2011-04-09 21:47:11.190000
Подскажите как сохранить .exe файл на Code Gear 2009!
Post #: 2125
RE: Вопросы по C/C++ (Для новичков) - 2011-04-15 19:33:25.646666   
Kokos123

Сообщений: 37
Оценки: 0
Присоединился: 2010-12-26 10:55:35.323333

quote:

ORIGINAL: ClickMouse_.!.

Подскажите как сохранить .exe файл на Code Gear 2009!
никак
Post #: 2126
RE: Вопросы по C/C++ (Для новичков) - 2011-04-17 22:17:37.086666   
qvazar

Сообщений: 8
Оценки: 0
Присоединился: 2011-03-07 00:02:00.120000
Нужно выделить из текста(в несколько строк) числа, которые при этом не являются частями слов(т.е. числа, окруженные разделителями). Пишу на С.
Собственно, моя идея такова: запустить цикл, начать проверку символов, являются ли они числами(с помощью функции isdigit). если да, то проверить предыдущий и последующие символы(если буква - то гуд бай, если число окружено разделителями - то занести его в массив).
Идея есть, а вот реализация подхрамывает(лучшее мое достижение - я сумел выделить  из текста все числа). Буду благодарен за любые советы.
Post #: 2127
RE: Вопросы по C/C++ (Для новичков) - 2011-04-18 17:49:36.290000   
Klofelin

Сообщений: 68
Оценки: 0
Присоединился: 2010-09-03 20:58:52.116666
Я бы делал так: берем строку, функцией strtok() разбиваем ее на подстроки, с пробелом в качестве разделителя. В каждой лексеме (подстроке) остается проверить, является ли каждый символ цифрой, той же самой функцией isdigit(). Все очень просто, если "число" - имеется в ввиду положительное целое число. Чуть сложнее, если могут попасться дроби и/или отрицательные числа. Тогда еще нужно обрабатывать символы "точка" и "минус". А еще бывают числа в научном формате, с буквой "E".[sm=bw.gif]
Post #: 2128
RE: Вопросы по C/C++ (Для новичков) - 2011-04-20 23:23:16.013333   
ruzakki

Сообщений: 4
Оценки: 0
Присоединился: 2011-02-22 22:49:59.576666
Плиз помогите
Нужно создать матрицу и вывести последовательность елементов главной диагонали
плз помогите
Post #: 2129
RE: Вопросы по C/C++ (Для новичков) - 2011-04-21 13:33:25.403333   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Лабы у студентов начались? Читай правила раздела.
Post #: 2130
RE: Вопросы по C/C++ (Для новичков) - 2011-04-23 00:12:19.356666   
Denaturat

Сообщений: 1741
Оценки: 453
Присоединился: 2008-10-27 20:50:06.380000
quote:

ORIGINAL: GazKerosin

Народ, есть вопрос. Имеется в наличии MSVisual Studio 2010 и файлы с программным кодом в формате .h и .cpp. Для упрощения восприятия программы целиком, можно ли в MS выстроить связи и зависимости между файлами?..


да
Post #: 2131
RE: Вопросы по C/C++ (Для новичков) - 2011-05-12 20:02:01.926666   
ruzakki

Сообщений: 4
Оценки: 0
Присоединился: 2011-02-22 22:49:59.576666
Помогите сделать


Дано натуральное число n, целые числа а1….а25, б1…..б(n). Среди а1….а25 нет повторяющихся чисел, нет их и среди б1….б(n)
1)Получить все члены последовательности б1….б(n) которые не входят в последовательность а1…а25
2)Верно ли что все члены последовательности а1…а25 входят в последовательность б1….б(n)
Post #: 2132
RE: Вопросы по C/C++ (Для новичков) - 2011-05-12 20:39:14.913333   
Alianna

Сообщений: 1922
Оценки: 356
Присоединился: 2010-03-02 11:27:12.343333
ruzakki, показывай что уже сделал и где именно проблема. Если ничего и проблема везде - иди в раздел Работа, авось кто возьмется.
Post #: 2133
RE: Вопросы по C/C++ (Для новичков) - 2011-05-12 22:21:39.873333   
ruzakki

Сообщений: 4
Оценки: 0
Присоединился: 2011-02-22 22:49:59.576666
вот что я сделал токо тут немного не так как нужно (кажись) нужно вводить n, и я не могу придумать как((((

#include&lt;stdio.h&gt; #include&lt;conio.h&gt; #include&lt;math.h&gt; #include&lt;stdlib.h&gt; #define n 25 #define m 30 #define mm 50 #define nn 30 void main() { float a[n],b[ss],min,max; rand(); int ss; for(int i=0;i&lt;n;i++){ a[i]=rand()%nn; for(int j=0;j&lt;i-1;j++) if (a[i]==a[j]) {a[i]=rand()%nn; i=1;break;} } printf("®á«¥¤®¢ â¥«ì­®áâì €\n"); for(i=0;i&lt;n;i++) printf("%8.2f",a[i]); printf("\n\n"); scanf("&d",ss); for(i=0;i&lt;ss;i++){ b[i]=rand()%ss; for(int j=0;j&lt;-1;j++) if (b[i]==b[j]) {b[i]=rand()%ss; i=j;break;} } printf("®á«¥¤®¢ â¥«ì­®áâì ‚\n"); for(i=0;i&lt;ss;i++) printf("%8.2f",b[i]); int kilk,kilk2=0; for(i=0;i&lt;ss;i++){ kilk=0; for(int j=0;j&lt;ss;j++) if (b[j]==a[i]) {kilk2++; break;} } printf("\n‡ ¤ ­¨¥ ƒ"); if (kilk2!=n) printf("\n“¬®¢  ­¥ ¢¨ª®­ãíâìáï.\n‚ᥠ童­ë ¯®á«¥¤®¢ â¥«ì­®á⨠€\n­¥ ¢å®¤ïâ ¢ ¯®á«¥¤®¢ â¥«ì­®áâì ‚."); if (kilk2==n) printf("\n “¬®¢  ¢¨ª®­ãíâìáï.\n‚ᥠ童­ë ¯®á«¥¤®¢ â¥«ì­®á⨠€\n¢å®¤ïâ ¢ ¯®á«¥¤®¢ â¥«ì­®áâì ‚."); printf("\n\n‡ ¤ ­¨¥ ‚\n"); int flag=0; for(i=0;i&lt;ss;i++){ for(int j=0;j&lt;n;j++){ if(b[i]==a[j]) flag=1; } if(flag==0) printf("%8.2f",b[i]); flag=0; } }
Post #: 2134
RE: Вопросы по C/C++ (Для новичков) - 2011-05-13 01:39:06.790000   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
http://www.cplusplus.com/reference/stl/set/

З.Ы. почитай, что такое переменные и что такое директивы препроцессора, а потом подумай, почему нельзя прочитать что-то с клавиатуры в макроподстановку, но можно прочитать в переменную.
Post #: 2135
RE: Вопросы по C/C++ (Для новичков) - 2011-05-19 19:52:41.526666   
ClickMouse_.!.

Сообщений: 18
Оценки: 0
Присоединился: 2011-04-09 21:47:11.190000
Подскажите как сделать окно программы типа как в [ NERO ] ? HA Code Gear 2009.
Post #: 2136
RE: Вопросы по C/C++ (Для новичков) - 2011-05-24 01:56:49.390000   
Coolzoom

Сообщений: 40
Оценки: 0
Присоединился: 2008-11-05 02:32:34.956666
Есть программа типа текстового редактора вернее это и есть текстовый редактор-записная книжка.
Внимание вопрос! 
Хочу реализовать сохранение всего написанного(данных аля "Мама мыла раму") прямо в тело программы(уже скомпилированной) чтобы можно было копировать с компа на комп только *.exe-шник проги а всё написанное в ней оставалось неизменным. Я не прошу готовой реализации(хотя если у кого-то есть выкладывайте) и у меня есть кое какие соображения по этой теме но всёже хочу выслушать ваши мысли по этому поводу. Язык Delphi/C++(в т.ч. QT)/Ассемблер.
Заранее спасибо!
P.S. Я где то в сети находил уже готовую такую прогу но название забыл.
Post #: 2137
RE: Вопросы по C/C++ (Для новичков) - 2011-05-24 04:14:14.350000   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Пиши в ресурсы. На лету просто так в .exe ты не запишешь.

З.Ы. врядли тебе это действительно нужно.
Post #: 2138
RE: Вопросы по C/C++ (Для новичков) - 2011-05-31 22:42:32.183333   
qw1234er

Сообщений: 14
Оценки: 0
Присоединился: 2011-04-01 21:22:36.600000
Подскажите пожалуйста как задать рандом на символы( чтобы забивал алфавитом матрицу ).

Post #: 2139
RE: Вопросы по C/C++ (Для новичков) - 2011-06-01 00:35:33.063333   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
сh[i][j] = rand() % ('z' - 'a') + 'a'
Post #: 2140
RE: Вопросы по C/C++ (Для новичков) - 2011-06-04 18:03:49.556666   
Рахман

Сообщений: 8
Оценки: 0
Присоединился: 2011-06-04 17:25:37.993333
люди плиз помогите пожалуйста очень надо!!!
у меня курсовая на тему "решение задачи останова"! я материал нашел все выучил..и мне дали задание написать программу останову…допустим к такому циклу
do
x=x+100
while x&gt;0; как вы поняли это бесконечный цикл …а мне надо написать прогу которая будет говорить что это бсконечный цикл. чтоб этот цикл не крутился пока не выйдет из допустимого диапазона! …проблему в том что надо написать прогу не именно к э тому циклу а к любому произвольному алгоритму! помогите плиз!..для справки задание как у меня описывается в книге "мастер класс С++" автор Мозговой М.В стр. 56-66
Post #: 2141
RE: Вопросы по C/C++ (Для новичков) - 2011-06-10 17:55:18.026666   
jaconda

Сообщений: 61
Оценки: 0
Присоединился: 2011-05-22 23:50:40.183333

for i:=1 to n do
for j:=1 to m do {n и m есть размерность матрицы; n-строк и m-столбцов }
if matr[i,j] in ['0'..'9'] then cifry:=cifry+1;
Post #: 2142
RE: Вопросы по C/C++ (Для новичков) - 2011-06-10 18:00:16.310000   
Alianna

Сообщений: 1922
Оценки: 356
Присоединился: 2010-03-02 11:27:12.343333
quote:

ORIGINAL: jaconda

for i:=1 to n do for j:=1 to m do {n и m есть размерность матрицы; n-строк и m-столбцов } if matr[i,j] in ['0'..'9'] then cifry[i]:=cifry[i]+1;

И при чем тут С/С++ ?
Post #: 2143
RE: Вопросы по C/C++ (Для новичков) - 2011-06-17 14:47:00.023333   
codeismy.name

Сообщений: 618
Оценки: 0
Присоединился: 2009-07-19 00:30:13.200000
добрый день, возникла задача написать прогу для связки с сайтом.
сам я пхп программист и с++ только начал изучать. модуль для сайта написал.. он отдаёт на нужной страничке xml-ку
прогу в c++ тоже накидал, осталось сделать загрузку этой хмлки по нажатии кнопки в локальную папку. собственно осталось только открыть сокет и запросом забрать хмлку.
как работают сокеты принципиально я знаю, а вот как создать сокет на с++ и посылать команды не знаю.

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

пишу под винду на visual c++
Post #: 2144
RE: Вопросы по C/C++ (Для новичков) - 2011-06-17 14:51:28.826666   
ClickMouse_.!.

Сообщений: 18
Оценки: 0
Присоединился: 2011-04-09 21:47:11.190000
А вот эта функция закрывает лоток CD привода:
Код C++
1
mciSendString("Set cdaudio door closed wait", NULL, 0, Handle);


Подскажите какая функция открывает лоток CD привода?
Post #: 2145
RE: Вопросы по C/C++ (Для новичков) - 2011-06-17 23:26:19.596666   
KwanzaBot

Сообщений: 129
Оценки: 0
Присоединился: 2011-04-18 19:45:33.773333
codeismy.name вот подбор ссылок почитать:
Вот
вот
и вот

Так же была книга, не помню точно названия, что-то типа "Программирования сокетов под linux", хотя слово linux смущать не должно, ибо общая теория одна, да и мало они отличаются.

А вобще инфы на эту тему на русском не очень много(

ClickMouse_.!., все гениально просто:

mciSendString('Set cdaudio door open wait', nil, 0, 0);
Post #: 2146
RE: Вопросы по C/C++ (Для новичков) - 2011-06-18 00:23:00.983333   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
quote:

ORIGINAL: codeismy.name
напишите пожалуйста простой пример открытия сокета с отправкой запроса и считыванием ответа.
желательно так же знать какие библиотеки подключаются для работы с сокетами.

Есть C'шный API, в венде он называется wininet, но вообще это ещё BSD'шный API. Как им пользоваться… Я изучал этот API по info glibc – его легко можно найти и в online варианте при помощи гугла. А можно прямо сразу спросить у гугла, что-нибудь типа "wininet http example".
Но, поскольку ты пишешь на C++, я бы порекомендовал поковыряться в Boost. Уверен там есть что-нибудь на этот счёт. Если уж там есть асинхронный ввод/вывод, значит и сокеты там должны быть. Точно, на запрос "boost socket example" гугл дал мне вот такую ссылку: http://www.boost.org/doc/libs/1_40_0/doc/html/boost_asio/examples.html
Post #: 2147
RE: Вопросы по C/C++ (Для новичков) - 2011-06-18 14:03:41.880000   
codeismy.name

Сообщений: 618
Оценки: 0
Присоединился: 2009-07-19 00:30:13.200000
вообще на самом деле я в мсдн нашел кучу примеров, но все они завязанны с .net а заставлять юзера ставить доп платформу както не хочется. тем более потом планирую на линукс портировать прогу

ссылки почитаю. .если возникнут пробемы напишу
Post #: 2148
RE: Вопросы по C/C++ (Для новичков) - 2011-06-18 22:18:27.560000   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
В мсдн есть куча примеров и без .net'а: http://msdn.microsoft.com/en-us/library/ms741416.aspx
Post #: 2149
RE: Вопросы по C/C++ (Для новичков) - 2011-06-22 14:05:20.826666   
KwanzaBot

Сообщений: 129
Оценки: 0
Присоединился: 2011-04-18 19:45:33.773333
Извините за глупый вопрос, но часто вижу что описания классов в программах на c++ выносят в .h, а реализацию в .cpp. Что это? зачем это? как это? =)
Просто вобще не могу понять, а в книгах такого даже и не видел(
Post #: 2150
RE: Вопросы по C/C++ (Для новичков) - 2011-06-22 14:32:56.500000   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Во-первых: чтобы значительно уменьшить время компиляции и повысить читаемость кода. Если у тебя будет один здоровый .cpp файл - то будет жутко неудобно в нём разбираться
Во-вторых: для реализации модульности. Написал кто-то библиотеку, и не хочет показывать её исходный код. А вот для использования необходимо знать прототипы функций / классов - вот они и будут лежать в .h файлах.

Надеюсь, доступно получилось.
Post #: 2151
RE: Вопросы по C/C++ (Для новичков) - 2011-06-22 14:48:35.716666   
KwanzaBot

Сообщений: 129
Оценки: 0
Присоединился: 2011-04-18 19:45:33.773333
большое спасибо, но может где-то есть какие-нибудь менуалы на эту тему? Для чего это я понял, но всё такие осталось много вопросов по использованию этого на практике.
Post #: 2152
RE: Вопросы по C/C++ (Для новичков) - 2011-06-22 16:21:40.760000   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Вот тебе мануал:
Объявления прототипов классов / функций, которые должны быть доступны в различных модулях (разных .cpp файлах) - пишешь в заголовочные файлы (.h); определение (реализацию) функций / методов - пишешь в .cpp файлы.

Достаточно хорошей (за редкими исключениями) общей практикой является выделение пары отдельной файлов (например: myclass.h и myclass.cpp) для каждого класса.

Теперь задавай свои вопросы, по использованию этого на практике, не стесняйся ;)
Post #: 2153
RE: Вопросы по C/C++ (Для новичков) - 2011-06-22 16:48:17.286666   
KwanzaBot

Сообщений: 129
Оценки: 0
Присоединился: 2011-04-18 19:45:33.773333
Просто я как понимаю один cpp файл есть один скомпилированный exe, dll и т.д. файл?
то есть если будет такая структура:

main.cpp
myclass.cpp
myclass.h

То должен скомпилироваться main и myclass как две различных программы? Если это не так, тогда как подключать myclass.cpp к main.cpp или к myclass.h чтобы можно было его использовать. Обычным #include ?
Post #: 2154
RE: Вопросы по C/C++ (Для новичков) - 2011-06-22 19:04:20.283333   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
quote:

ORIGINAL: KwanzaBot
Просто я как понимаю один cpp файл есть один скомпилированный exe, dll и т.д. файл?
то есть если будет такая структура:

Почитай внимательно про компиляцию и линковку программ.

quote:

ORIGINAL: KwanzaBot
main.cpp
myclass.cpp
myclass.h

Получится main.obj и myclass.obj, которые потом будут слинкованы в один .exe

quote:

ORIGINAL: KwanzaBot
То должен скомпилироваться main и myclass как две различных программы?

Как два различных объектных модуля - ссылка

quote:

ORIGINAL: KwanzaBot
Если это не так, тогда как подключать myclass.cpp к main.cpp или к myclass.h чтобы можно было его использовать. Обычным #include ?

В main.cpp пишешь #include "myclass.h" и используешь. Без этого, при попытке использования, ты получишь ошибку, что myclass is undefined (не объявлен). И это логично, т.к. компилятор при компилировании main.cpp ничего не знает о class myclass;

P.S. почитай всё-таки базовые книжки.
Post #: 2155
RE: Вопросы по C/C++ (Для новичков) - 2011-06-22 23:47:24.233333   
GazKerosin

Сообщений: 348
Оценки: 0
Присоединился: 2010-02-01 18:14:52.200000
Народ, такой вопрос. При завершении программы консоль моментально закрывается, так что результат нельзя посмотреть. Как сделать так, чтобы после выполнения программа ожидала нажатия клавиши?..
Post #: 2156
RE: Вопросы по C/C++ (Для новичков) - 2011-06-22 23:53:45.396666   
ShyRka

Сообщений: 235
Оценки: 0
Присоединился: 2010-07-09 10:55:56.626666

quote:

ORIGINAL: GazKerosin

Народ, такой вопрос. При завершении программы консоль моментально закрывается, так что результат нельзя посмотреть. Как сделать так, чтобы после выполнения программа ожидала нажатия клавиши?..

подключи : #include<conio.h>
в конце программы добавь getch();
и все)
Post #: 2157
RE: Вопросы по C/C++ (Для новичков) - 2011-06-23 00:26:26.223333   
GazKerosin

Сообщений: 348
Оценки: 0
Присоединился: 2010-02-01 18:14:52.200000
О1 Спасибо))
На самом деле, он и без подключения библиотеки заработал))
Post #: 2158
RE: Вопросы по C/C++ (Для новичков) - 2011-06-23 01:03:28.500000   
GazKerosin

Сообщений: 348
Оценки: 0
Присоединился: 2010-02-01 18:14:52.200000
И еще. для чего собственно нужна функция void. По сути это пустое множество, но толкования ее предназначения я так и не нашел.
Post #: 2159
RE: Вопросы по C/C++ (Для новичков) - 2011-06-23 03:32:19.843333   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
void это не функция, это тип, обозначающий "пустой" или "отсутствующий" тип. Т.е. void Foo() - функция, которая ничего не возвращает.

Чел, дейтсвительно, иди читай книжки, там всё это расписано.
Post #: 2160
Страниц:  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
Все форумы >> [Компилируемые языки] >> RE: Вопросы по C/C++ (Для новичков)







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.