hiubi Opublikowano 22 Października 2007 Zgłoś Opublikowano 22 Października 2007 Witam.Własnie zaczynam swoją przygode z programowaniem w c++.Mam program MS Visual studio 8/2005 i chce wykonac program który otworzy sie w lini poleceń.No wieć robie nowy projekt , potem nowy plik biblioteki cpp i pisze kod . No i potem nie zabardzo wiem jak uruchomic ten program, daje build ( nazwa programu ), potem debug i pisze ze nie ma w katalogu z projektem pliku exe a jak uruchamiam linkera to podaje bład : warning LNK4001: no object files specified; libraries used LINK : error LNK2001: unresolved external symbol _mainCRTStartup , i nie wiem o co chodzi. Prosze o pomoc , pisałem juz na 1 forum ale nikt nie zabardzo chce mi pomóc. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
PelzaK Opublikowano 22 Października 2007 Zgłoś Opublikowano 22 Października 2007 (edytowane) pokaż koda a powiem Ci kim jesteś :D... najprawdopodobniej prubujesz odpalać progrma konsolowy z wykorzystaniem funkcji winmain() lub na odwrót. Pokaż koda to pogadamy... :) Inna możliwość... Nie doinstalowałeś WinSDK czy jak mu tam (jesli posiadasz okrojoną wersję express). Edytowane 22 Października 2007 przez PelzaK Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
hiubi Opublikowano 23 Października 2007 Zgłoś Opublikowano 23 Października 2007 Ok, tu jets kod, ja dopiero zaczynam wiec prosze sie nei smiać :), dopiero potem bede mógł poszpanować jakimś extra kodem :P #include <iostream> int main() { std::cout << "Witaj Swiecie!\n"; return 0; } A , i mam MS visual studio 2005 pro Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
PelzaK Opublikowano 24 Października 2007 Zgłoś Opublikowano 24 Października 2007 (edytowane) więc po pierwsze... Skoro dopiero zaczynasz, dam Ci jedna, najważniejszą radę. ZAWSZE czytaj błędy jakie daje CI kompilator, ze zrozumieniem.. Na początku może być trudno, ale wystarczy dać F1 na błędzie aby pokazał się help odpowiedni... Pamiętaj, że błedy są po to, aby można było zdiagnozować co się dzieje.. a nie po to, żeby powiedzieć programiście że.. spadaj dziadu, twój program nie działa... :). No i naucz się korzystać z debugera (ustawianie breakpointów F9) i wykonywanie programu w trybie krokowym (F10, F11). Zobacz co wtedy oferuje Ci visual studio po najechaniu myszką nad np nazwę zmiennej czy obiektu :). To pomoże Ci prześledzić co tak naprawdę robi program gdy działa nie tak jakbyś chciał. Natomiast jeśli chodzi o program, wydaje się być poprawnym hello worldem w C++ :). Wejdź w opcje projektu (PPM na projekcie i properties), wybierz w drzewku opcje linkera i w polu subsystem wybierz Console (/SUBSYSTEM:CONSOLE). Dzięki temu linker nie będzie szukał funkcji winmain() jako entrypointa dla programów windowsowych a entrypointa dla programów konsolowych, jakim jest funkcja main(). Powinno pomóc. Przy okazji, jeśli napotkasz błąd linkera (nie kompilacji) pod tytułem, unresolved external symbol, to zazwyczaj chodzi o to, że w hederku (plik_jakis.h) masz zdefiniowaną funkcję, która nie ma implementacji w pliku.cpp. W przypadku Twojego programu linker domyślnie szukał funkcji _mainCRTStartup() ale jej nie znalazł. Być może, (ale nie jestem pewien) pomogło by też dołączenie pliku windows.h. W każdym razie, skoro piszesz program konsolowy, to powinien być konsolowy... Edytowane 24 Października 2007 przez PelzaK Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...