2017-10-21 1 views
0

J'ai été brûlé tout à l'heure. Je n'avais pas activé les avertissements lors de la compilation de mon code c. J'utilisais atof sans inclure stdlib.h. Donc, le atof utilisait une déclaration implicite qui avait le type de retour par défaut int. Donc, le code ne fonctionnait pas. Je me demandais si le concept de déclarations implicites s'applique également à C++?Existe-t-il une déclaration implicite en C++?

+2

Les prototypes de fonction sont requis en C++. Pouvez-vous fournir un [SSCCE] (http://sscce.org) qui démontre le problème que vous avez observé? –

+0

@GregHewgill: Il parle de [cette fonctionnalité C (mis)] (https://stackoverflow.com/questions/9182763/implicit-function-declarations-in-c). –

+1

@NicolBolas: Je comprends, mais la question est sur C++, pas C. –

Répondre

2

C++ n'autorise pas implicit function declarations. En effet, même C99/11 ne les autorise pas. GCC compile C par défaut comme C89, c'est pourquoi vous avez l'erreur que vous avez faite.