Cosa non capisco di usare strcpy () in Visual Studio 2010?
-
11-12-2019 - |
Domanda
#include <string.h>
sdi12CRC::sdi12CRC()
{
CRC = 0;
responseToDCommandWithoutCRC = new char[MAX_D_COMMAND_RESPONSE_SIZE];
responseToDCommandWithCRC = new char[MAX_D_COMMAND_RESPONSE_SIZE];
asciiCRC = new char[ASCII_CRC_SIZE];
strcpy(responseToDCommandWithoutCRC,"");
strcpy(responseToDCommandWithCRC,"");
strcpy(asciiCRC,"");
}
.
Sopra è un frammento di codice da un programma C ++ che ho scritto e testato qualche tempo fa con Borland C ++ Builder.Funziona.Ora sto imparando Visual Studio 2010, quindi ho pensato di usare il mio lavoro passato per aiutare a conoscere Visual Studio.
Ottengo un avviso e e un errore sul codice sopra, ma il codice sopra riportato è il codice Legit C ++.Non riesco a trovare alcun aiuto nella documentazione VS per imparare quello che sto facendo male e come risolverlo.(Non sto dicendo che non è nella documentazione, solo dicendo che non riesco a trovarlo).
Warning 1 warning C4627: '#include <stdlib.h>': skipped when looking for precompiled header use
Error 4 error C3861: 'strcpy': identifier not found
.
Cosa dia qui?Non è String.h L'intestazione richiesta per strcpy?Così strcpy () dovrebbe compilare.Cos'è che non capisco o lo sappia?
Qualsiasi aiuto sarà più apprezzato.
Soluzione
Il problema è che hai configurato il progetto per utilizzare le intestazioni precompile, ma non li stai usando.Basta regolare le impostazioni del progetto per non utilizzare intestazioni precompile.
Altri suggerimenti
Prova ad aggiungere esplicitamente sia #include <stdlib.h>
#include <string.h>