-2
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#define FALSE 0
#define TRUE 1
................................チェック回文とデバッグ
if (strcmp(strrev(inputarray),temp) == 0)
printf("Palindrome\n");
else
printf("Not palindrome\n");
}
しようこれはまだ入力が回文であるときに '回文ではない'となります。それは、私がプログラムを実行すると、 'stackar inputarray corrupted'と言います。どのように修正するかについてのアイデアは、回文を読み取り、入力配列が破損するのを止めます。
あなたは 'strcpy(temp、inputarray)'で何を達成しようとしていますか?実行時には、 'temp'と' inputarray'の両方が初期化されていないことに注意してください。どちらも良い終了文字列ではない可能性があります。 –
'strcpy(temp、inputarray)'が間違った位置にあると、inputarrayがいっぱいになってから来なければなりません。これで、初期化されていないデータがコピーされます。 –
1. [デバッガ](http://stackoverflow.com/questions/2069367/how-to-debug-using-gdb)の使い方を学びます。 2.コードをインデントしてください。 3. 'stdbool.h'を使い、' true or false'にはMACROを使わないでください。最後に、http://stackoverflow.com/help/how-to-ask – Stargateur