Der Code funktioniert nur mit ASCII Codierung. Aber das Prinzip läßt sich auch auf andere Kodierungen übertragen. Da Zeiger verwendet werden, muß zur Kompilierung /unsafe verwendet werden.
public void countUpperLower (string a, out int upper, out int lower) {
lower = 0; upper = 0;
unsafe {
fixed (char* cTmp = a) {
char* c = cTmp;
char* end = c + a.Length;
while (c < end) {
if (*c > 64 && *c < 91 )
upper++;
if (*c > 96 && *c < 123)
lower++;
c++;
}
}
}
}
4 Kommentare zum Snippet