Visual c++ e nuovo mini-programma

di Anonimizzato9768 il
6 risposte
Allora innanzitutto colgo l'occasione per presentarmi e sperare che il mio viaggio nella programmazione duri per parecchio tempo. Sono da sempre appassionato d'informatica e finalmente con i dubbi e il coraggio del giovane ignorante ho deciso di buttarmi e vedere cosa riesco a fare , tuttavia sono già incappato nei primi problemi , volendo così superarli e capire cosa c'è che non va , chiedo a chi ne sa più di me .

Ho acquistato il libro di malik " programmazione in c++ " , testo didattico universitario per il primo anno . A pagina 27 espone la seguente compilazione



//*******************************************************
//Autore D.S. Malik
//
//Questo è un programma C++. Visualizza tre righe di
//testo, tra cui la somma di due numeri
//*******************************************************

#include <iostream>

using namespace std;

int main()
{
cout << "My first C++ program" << endl;
cout << "The sum of 2 and 3 =" << 5 << endl;
cout << "7 + 8 = " << 7 + 8 << endl;

return 0;
}



Sto utilizzando il programma visual c++ 2010 , e quando premo il fatidico f-7 per compilare la soluzione mi da il seguente errore .


1>------ Inizio compilazione: Progetto: empty, Configurazione: Debug Win32 ------
1>LINK : error LNK2001: simbolo esterno _mainCRTStartup non risolto
1>c:\users\fede\documents\visual studio 2010\Projects\empty\Debug\empty.exe : fatal error LNK1120: 1 esterni non risolti
========== Compilazione: 0 completate, 1 non riuscite, 0 aggiornate, 0 ignorate ==========


Ora , sul libro non c'è scritto nient'altro .
Aggiungo infine sono partito utilizzando la funzione "nuovo progetto per console win 32" , " progetto vuoto " ( per ora non me la sento di utilizzare quello prescritto , l'ho aperto una volta e non ho capito una cippa )

a questo punto la domanda che cosa c'è che non va ?

grazie per la disponibilità

6 Risposte

  • Semplicemente nel progetto vuoto non viene linkata la libreria di runtime libcmt.lib che invece il progetto preconfezionato fa. Scegli il preconfezionato ed eventualmente togli gli header precompilati. Poi tutto funziona.
  • Aaah ma certo , come ho fatto a non pensarci ?! Dovevo togliere gli header .

    Ironia a parte , non ho la minima idea di cosa siano

    oltretutto per errore ho chiuso la barra di sinistra di visual c++ 2010 e non sto capendo da dove si ri-visuallizza ( quella dove si vedono le varie cartella , a mo di esplora risorse )

    comunque sia, grazie della risposta
  • Ma quindi che si deve fare per andare avanti ?
  • Usa questo.
    http://hotfile.com/dl/142340008/7325d03/TestApp.zip.html

    Cmq se segui le indicazioni di shodan dovresti risolvere. Un header file è il file di intestazione ovvero nel tuo caso <iostream>. Quello precompilato da togliere è invece stdafx.h
  • Waaaa ho avuto una risposta positiva sia da voi , sia dal programma . allora innanzitutto vi ringrazio per l'aiuto e per il chiarimento , ora però sorgono altre domande . Il primo , lasciare le due stringhe #include , non da l'idea di un codice poco chiaro , e\o " sporco " ? comunque vi allego qui il risultato finale , sperando in un vostro " ok , continua su questa strada

    -----------------------------------------------------------------
    // speriam.cpp : definisce il punto di ingresso dell'applicazione console.
    //


    #include "stdafx.h"
    #include <iostream>

    using namespace std;


    int _tmain(int argc, _TCHAR* argv[])
    {
    cout << " sperem " << endl;

    return 0;
    }


    ----------------------------------------

    'speriam.exe': caricato 'C:\Users\fede\Documents\Visual Studio 2010\Projects\speriam\Debug\speriam.exe', Simboli caricati.
    'speriam.exe': caricato 'C:\Windows\SysWOW64\ntdll.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\kernel32.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\KernelBase.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\msvcp100d.dll', Simboli caricati.
    'speriam.exe': caricato 'C:\Windows\SysWOW64\msvcr100d.dll', Simboli caricati.
    'speriam.exe': caricato 'C:\Windows\SysWOW64\apphelp.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\AppPatch\AcLayers.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\sspicli.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\msvcrt.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\rpcrt4.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\cryptbase.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\sechost.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\user32.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\gdi32.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\lpk.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\usp10.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\advapi32.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\shell32.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\shlwapi.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\ole32.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\oleaut32.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\userenv.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\profapi.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\winspool.drv', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\mpr.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\imm32.dll', Impossibile trovare o aprire il file PDB
    'speriam.exe': caricato 'C:\Windows\SysWOW64\msctf.dll', Impossibile trovare o aprire il file PDB
    Il programma '[8808] speriam.exe: Nativo' è terminato con il codice 0 (0x0).

    Allora dite che è tutto ok ?
  • Si è tutto OK.
Devi accedere o registrarti per scrivere nel forum
6 risposte