【发布时间】:2015-12-17 11:13:29
【问题描述】:
#include <stdio.h>
#include <cs50.h>
#include <string.h>
#include <ctype.h>
int main(int argc, string argv[])
{
int i=0;
int x=0;
int n=0;
argv[i]=GetString()
printf("%c", toupper(argv[i][0]));
for (x=0, n=strlen(argv[i]); x<n; x++)
{
printf("%c", toupper(argv[i+1][0]));
}
printf("\n");
}
代码编译但不打印用户输入的姓名的首字母。例如,John Smith: JS。相反,我收到了分段错误。
这个程序是 CS50 的 initials.c。
【问题讨论】:
-
printf("%c%c\n", argv[1][0], argv[2][0]);如果你执行./a.out John Smith。如果GetString()输入,请勿使用 argv。
标签: c arrays initializer-list cs50