void foo(char* p_string) { // Check the preconditions. assert(NULL != p_string); // ... }
En informatique, une assertion est une expression qui doit être évaluée à vrai. Si le résultat de l'évaluation est faux, c'est qu'il y a un problème, une erreur qui ne doit pas se produire. Les assertions peuvent par exemple être utilisées pour s'assurer qu'une valeur est bien comprise entre deux bornes, qu'un pointeur n'est pas nul, etc...
Arduino utilise AVR-GCC et l'AVR Libc qui propose de prendre en charge les assertions via la bibliothèque assert définie dans le fichier d'entête assert.h.
Cet article propose de découvrir les assertions de l'AVR Libc puis de les mettre en œuvre sur Arduino.