-1

私は toupper 関数で練習していますが、私はこれを機能させることができます.printfの時点で常にクラッシュするので、引数が悪いと思います.

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

int main (void){

char pepito[10];

puts("\nTell me something: \n");
scanf("%9s", pepito);
puts("\a");
printf("Could be this?: %s", toupper(pepito[2]));

system("pause");    





}
4

1 に答える 1

1

3番目の文字のみを呼び出す理由がわかりませんtoupper()(そして、3番目charを文字列として出力しようとします-そう%sではありません%c)、それは実際にあなたの質問だと思います-したがって、プログラムは実際にインデックスを使用する必要があります1(インデックスは0から始まります)、

int main (int argc, char *argv[]) {
  int i = 0;
  char pepito[10];

  puts ("\nTell me something: \n");
  scanf ("%9s", pepito);
  /* Capitalize the third letter. */
  pepito[1] = toupper (pepito[1]);
  /* print the capitalized pepito */
  printf ("Could be this?: %s\n", pepito);
}

実行すると生成されます

$ ./a.out 

Tell me something: 

random
Could be this?: rAndom
于 2014-08-31T23:55:01.590 に答える