C のいくつかのコードで問題が発生しています:
char opt, name[10], path[25];
printf("Things\nMore things\n");
printf("Even more things\n");
printf("\nChar: ");
scanf("\n%c",&opt);
printf("\nTask name: ");
scanf("%s",name);
printf("Name: %s\n", name);
printf("\nFolder name: ");
scanf("%s",path);
printf("Name: %s\n", name);
printf("Path: %s\n", path);
これは、「クリーン」モードで問題を起こすコードです。問題は、データのサイズが 10 または 25 より大きい場合、文字列を切り取るのではなく、「名前」と「パス」が混在することです。場合によっては、「パス」の一部を「名前」に入れています。これは未定義の動作ですか、それとも何か不足していますか?