2016-11-05 4 views

Antwort

0

Sie drucken das erste Zeichen jedes Elements des argv Arrays von Strings. Das erste Element argv[0] ist der Name der ausführbaren Datei. Wahrscheinlich rufen Sie Ihre ausführbare Datei als ./myprogram auf, daher die ., die zuerst gedruckt wird.

Sie argv aufzählen sollte bei Eintritt der Startnummer 1. Darüber hinaus sollten Sie die char als (unsigned char) werfen, weil toupper() nur für alle Werte des Typs unsigned char und den besonderen Wert EOF definiert ist, nicht die potenziell negativen Werte des char Typ wenn es standardmäßig signiert ist.

#include <ctype.h> 
#include <stdio.h> 

int main(int argc, char *argv[]) { 
    for (int i = 1; i < argc; i++) { 
     putchar(toupper((unsigned char)argv[i][0]))); 
    } 
    putchar('\n'); 
    return 0; 
} 
Verwandte Themen