Einführung in Prädikate in C im Rahmen der Lehre des Programmierens mit der Programmiersprache C. (C Prädikat C isalpha C Prädikate C), Lektion, Seite 721262
http://www.purl.org/stefan_ram/pub/c_praedikate_de ist die kanonische URI dieser Seite.
Stefan-Ram-Startseite

Prädikate in C

In dieser Lektion wird die Funktion "isalpha" als Beispiel eines Prädikats in C  vorgestellt.

isalpha

Die Funktion "isalpha" kann verwendet werden, um zu ermitteln, ob ein Zeichen ein Buchstabe ist.

isalpha [Synopse]
#include <ctype.h> 
int isalpha( int c );

Die Standardfunktion "isalpha" hat ein Parameter vom Typ "int". Das Ergebnis der Funktion "isalpha" ist ein Wert vom Typ "int". Das Ergebnis der Standardfunktion "isalpha" ist ein von Null verschiedener Wert, wenn das durch den Argumentwert beschriebene Zeichen ein Buchstabe des Ausführungszeichensatzes ist und sonst der Wert "0".

Von einem Prädikat erwartet man zunächst einen Wahrheitswert, wie „wahr“ oder „falsch“. In C  werden häufig die ganzen Zahlen als Wahrheitswerte verwendet, wobei nur die Zahl 0 für den Wahrheitswert „falsch“ steht und alle anderen Zahlen für den Wahrheitswert „wahr“ stehen können. Daher ist es gerechtfertigt in diesem Fall die Funktion als ein Prädikat anzusehen, obwohl ihr Ergebnis nicht direkt vom für Wahrheitswerte in C  vorgesehenen Datentyp "_Bool" ist.

Das folgende Programm gibt den Wert des Funktionsausdrucks "isalpha( 65 )" aus.

isalpha.c
#include <stdio.h> 
#include <math.h>
int main(){ printf( "%d\n", isalpha( 65 )); }

stdout
1

Zur Zuordnung einer Zahl zu einem Buchstaben muß der Zeichensatz des verwendeten Rechners herangezogen werden (Genauer gesagt, der durch das sogenannte “locale ” bestimmte Zeichensatz). Im Falle des ASCII -Codes entspricht die Zahl 65 beispielsweise dem Zeichen "A". Daher würde das obige Programm auf einem Rechner (“locale ”) mit ASCII -Code einen von Null verschiedenen Wert ausgeben.

Seiteninformation und Impressum   
Formular für diese Seite betreffende Mitteilungen an den Herausgeber   
Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. slrprd, PbclevtugFgrsnaEnz