isgraph() ist definiert in der ctype
, die in C über ctype.h
, bzw. in C++ über cctype
eingebunden wird.
isgraph() überprüft, ob das übergebene Zeichen eine sichtbare Repräsentation besitzt. Als druckbare Zeichen gelten alle Buchstaben, Satzzeichen, Ziffern. Alle Kontrollzeichen sind nicht sichtbar, somit entspricht isprint() der negierten Form von iscntrl(), kombiniert mit einer Abfrage auf das Leerzeichen. Von isprint() unterscheidet isgraph() sich lediglich dadurch, dass das Leerzeichen nicht akzeptiert wird
Es wird ein Integer übergeben, ein char wird allerdings implizit in ein Integer konvertiert, so dass
isgraph( 'c' );
ebenso syntaktisch korrekt ist.
#include <ctype.h> int isgraph( int character );
character: der zu überprüfende ASCII Code
Return value: 0 für false, ein beliebiger anderer Wert für true
#include <ctype.h> #include <stdio.h> int main( void ) { char text[] = "Welcome to\n\tC programming!"; // Nächste Zeile (\n) + Tabulator (\t) int i = 0; while( isgraph( text[ i ] )) i++; printf( "Die ersten %d Zeichen sind Kontrollzeichen, gefolgt vom ASCII Code %x\n", i, text[ i ] ); return 0; }
Ausgabe: Die ersten 7 Zeichen sind Kontrollzeichen, gefolgt vom ASCII Code 20