поизучай этот код. Code: char *split(char *s1, char *s2) { char *p = new char[strlen(s1) + strlen(s2) + 1]; char* result = p; while( *p++ = *s1++ ) ; p--; while( *p++ = *s2++ ) ; return result; } пара замечаний - не делай выделение памяти в одной функции, а освобождение в другой. или же делай класс, чтобы скрыть управление памятью(собсно тот самый string так и работает). если без классов - то первую строку переносишь в место вызова и добавляешь третий параметр - строка которая будет содержать результат. второе - p[j++] = *s2++; если уж делаешь через разыменовывние - делай все через разыменование. или все через индекс. а то этот код заставляет лишний раз на нем сфокусироваца.
http://4italka.okis.ru/ Классный сайт практически только хорошие книги сам прочел большую часть книги по программированию на языках Assembler,Delphi,Pascal.DirectX 9.OpenGL,C++,C#,Cи,Java2,Visual Basic,Visual Studio.NET,Perl, Хакинг
слушай я нечего не писал оформил по симпатичней и всё а то коппипаст с главной страницы сайта МНОГО ХОРОШИХ КНИГ http://4italka.okis.ru Вот так устроит ?
Не знаю мб уже было тут но вот 4 издание книги для С++ http://samouchka.net/ebooks/yap/cpp/17014-osvojj-samostojatelno-c-za-24-chasa-4-e-izdanie.html
Я не понимаю что вообще подобные посты делают в этой теме. мой вопрос: как подключить курл к С++? скачал curl-7.16.2, положил папку curl в проект, подключил: #include "curl/curl.h" ошибки: Code: `curl_easy_cleanup' was not declared in this scope main.cpp curl 84 C/C++ Problem Description Resource Path Location Type `curl_easy_perform' was not declared in this scope main.cpp curl 81 C/C++ Problem `curl_easy_setopt' was not declared in this scope main.cpp curl 73 C/C++ Problem `CURL_ERROR_SIZE' was not declared in this scope main.cpp curl 20 C/C++ Problem `curl' was not declared in this scope main.cpp curl 64 C/C++ Problem и тп.. вроде бы надо скомпилировать сорцы, чтобы получить *.lib файл, а потом присоединить его к компилятору. но я во-первых не знаю как скомпилить в винде - МС Визуал студио выдает 300 ошибок, во вторых как правильно подключать *.lib к связке minGW+eclipse ? вроде бы через линкер он раньше ругался + в чужих примерах я не вижу никакого линкования в коде.
положил /curl/*.h в mingw/include а libcurl.a и libcurldll.a в mingw/lib всё равно ошибки C:/qt4/projects/curl/Debug/../main.cpp:68: undefined reference to `_imp__curl_easy_init' C:/qt4/projects/curl/Debug/../main.cpp:73: undefined reference to `_imp__curl_easy_setopt' C:/qt4/projects/curl/Debug/../main.cpp:74: undefined reference to `_imp__curl_easy_setopt' C:/qt4/projects/curl/Debug/../main.cpp:75: undefined reference to `_imp__curl_easy_setopt' C:/qt4/projects/curl/Debug/../main.cpp:76: undefined reference to `_imp__curl_easy_setopt' C:/qt4/projects/curl/Debug/../main.cpp:77: undefined reference to `_imp__curl_easy_setopt' main.o:C:/qt4/projects/curl/Debug/../main.cpp:78: more undefined references to `_imp__curl_easy_setopt' follow main.o: In function `main': C:/qt4/projects/curl/Debug/../main.cpp:81: undefined reference to `_imp__curl_easy_perform' C:/qt4/projects/curl/Debug/../main.cpp:84: undefined reference to `_imp__curl_easy_cleanup'
добавил в параметры компилятора библиотеку curl ------------ g++ -IC:\qt4\minGW\include\curl -O0 -g3 -Wall -c -fmessage-length=0 -DCURL_STATICLIB -g -Lcurl/lib -omain.o ..\main.cpp g++ -LC:\qt4\minGW\lib -ocurl.exe main.o -lcurl C:\qt4\minGW\lib/libcurl.a(easy.o).text+0x7e): undefined reference to `WSAStartup@8' C:\qt4\minGW\lib/libcurl.a(easy.o).text+0x9b): undefined reference to `WSACleanup@0' C:\qt4\minGW\lib/libcurl.a(easy.o).text+0x188): undefined reference to `WSACleanup@0' C:\qt4\minGW\lib/libcurl.a(sendf.o).text+0xa1): undefined reference to `recv@16' C:\qt4\minGW\lib/libcurl.a(sendf.o).text+0xb9): undefined reference to `WSAGetLastError@0' C:\qt4\minGW\lib/libcurl.a(sendf.o).text+0x73d): undefined reference to `send@16' C:\qt4\minGW\lib/libcurl.a(sendf.o).text+0x758): undefined reference to `WSAGetLastError@0' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0xf3): undefined reference to `ioctlsocket@12' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x193): undefined reference to `getsockopt@20' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x1c7): undefined reference to `WSAGetLastError@0' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x206): undefined reference to `setsockopt@20' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x45e): undefined reference to `socket@12' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x4f4): undefined reference to `setsockopt@20' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x5fe): undefined reference to `bind@12' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x63f): undefined reference to `ntohs@4' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x709): undefined reference to `closesocket@4' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x73b): undefined reference to `connect@12' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x7c9): undefined reference to `WSAGetLastError@0' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x8a9): undefined reference to `getsockname@12' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x8e0): undefined reference to `WSAGetLastError@0' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x92c): undefined reference to `htons@4' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x94b): undefined reference to `WSAGetLastError@0' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0x97d): undefined reference to `WSAGetLastError@0' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0xae0): undefined reference to `htons@4' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0xb18): undefined reference to `closesocket@4' C:\qt4\minGW\lib/libcurl.a(connect.o).text+0xcbd): undefined reference to `WSAGetLastError@0'
всё, удалось оказывается чтобы юзать либу curl надо добавить параметры: -DCURL_STATICLIB -lcurl -lwldap32 -lwsock32
Сразу же видно что ошибки линковки валятся с либсы сокетов, значит ее надо было подключить что ты наверно и сделал ))
спасибо за книги по си, только после установки висуал си от микрософта не которые программы начинают глючить, ошибки выбивают, точно ошибку не помню,
ТС-у спс за ссылгу на среду работы в С++ от мелкомягких (Microsoft Visual C++)... но йа вот также слышал что-то про компиляторы фирмы Borland (очень уж много моззго**ства с этим Microsoft Visual C++). Чем Borland лучше, стоит ли его качать, насколько он проще\удобнее в использование в отличие от детища вездесущих мелкомягких? ЗЫ или йа что-то перепутал? ЗЗЫ интересует в первую очередь простата создания не консольных приложений, а программ с графическим пользовательским интерфейсом (GUI) ________________________________ Microsoft must die!!!
качай borland Может лучше выучить сначала русский язык, а потом приступать к С++ ... ps. Здесь ты такими фразами никому ничего не докажешь, кроме ограниченности своих взглядов.
Не понимаю твою ненависть к МС.. ты же кодишь для винды... если так ненавидишь, дк программируй под юникс... Думаю Borland C++ Builder в самый раз подойдет тебе... Оболочка как в делфях, тока язык с++...тыц
Borland C++ Builder - это самое фуфловое что может быть. Изуродованное сиподобное делфи ) Понимаешь что не любишь MS только тогда когда сталкиваешься с такими проблемами которые не имеют адекватного решения и чаще всего они есть только в ядре. Зато начинаешь любить MS тогда, когда долго кодишь под винду, а потом пытаешься накодить под Linux ) Но это чисто связано с привычкой. А на счет сначало выучить рус яз, а потом С++ - тут вы совершенно не правы. Так получается что у мена грамматика русского языка ооочень хромает. Спасает только то, что в FF есть проверка орфографии. Но при этом я хорошо знаю языки программирования. (жаль в Delphi и С++ нету проверки орфографии в русском тексте. очень жаль (((
А почему бы и нет? 2Слэш, по постам человека видно, что он хочет прямо сейчас чтонить создать, практически ничего не изучая. В этом случае лучшим выходом будет именно борланд. Насчет грамматики я не говорю, что без русского языка программистом не станешь, однако он все же должен быть приоритетным, по-моему