-4
このコードは、このSIGSEGVエラーを示していますが、これはセグメンテーションエラーです。助けてもらえますか? コードは、大文字小文字を区別しない大文字と小文字の区別がない入力文字列の数を入力文字列に複数回返します。 私はこれをプログラミング上の課題に使用しています。これは単なる関数です。プロセスはSIGSEGVシグナルで早期に終了します
したがって、「aabcdef」を入力すると、「a」が2回発生するため、2を返します。入力にはアルファベットと数値を含めることができます。
int duplicateCount(const char* in)
{
int a[39]={0},b=0;
for(int i=0;i<strlen(in);i++)
{
if(in == NULL)
return 0;
if((int)in[i] < 97)
{
a[(int)in[i]]++;
}
a[tolower(in[i])-'a'+1]++;
}
for(int i=0;i<39;i++)
{
if(a[i]>1)
b++;
}
return b;
}
何を使用することができます。 'アウトタウンド? – snr
@snr 'Z'は 'z'に変換されるので、[26] ++;アウトタウンド境界ではない – yaoshinga