Compilateurs

Parmi les erreurs de programme, laquelle peut être détectée dès la compilation ?

  1. AUne erreur due à l'inexistence d'un fichier indiqué par l'utilisateur
  2. BUne erreur de mémoire insuffisante pendant l'exécution
  3. CUne erreur de grammaire due à des parenthèses non appariées
Afficher la réponse et l'explication

Réponse : C. Une erreur de grammaire due à des parenthèses non appariées

Les erreurs de grammaire comme des parenthèses non appariées ou un point-virgule manquant sont toujours détectées lors de l'analyse syntaxique, qui arrête la compilation. Les incohérences de types, etc., sont aussi détectées par l'analyse sémantique. En revanche, l'existence d'un fichier indiqué par l'utilisateur ou la suffisance de la mémoire à l'exécution dépendent de l'environnement et des entrées à l'exécution, et ne sont pas connues à la compilation. Ces erreurs d'exécution exigent des parades dans le programme, comme la vérification des valeurs de retour.

S'entraîner sur ce thème Retour au thème

Autres questions sur Compilateurs

  1. Dans un langage à typage statique, quel est le principal avantage de la vérification des types par le compilateur ?
  2. Qu'utilise-t-on souvent pour exprimer les règles de reconnaissance des lexèmes dans l'analyse lexicale ?
  3. Quel type de grammaire, utilisé pour décrire la grammaire de nombreux langages de programmation, sert de base à l'analyse syntaxique ?
  4. Quelle est la forme correcte de l'arbre syntaxique abstrait de l'expression 2 + 3 * 4 ?
  5. Quelle caractéristique du code à trois adresses, l'une des représentations intermédiaires, est correcte ?

Comparatifs sur ce thème