Görevim, bir C dizesinde kaç karakter bulunduğunu saymaktır. Giriş, erişemediğim bir test sürücüsü tarafından sağlanıyor, ancak işlevimin verilere erişmesi ve kaç karakterin az ve AZ arasında değiştiğini belirlemesi gerekiyor ancak programım başarısız oluyor ve ben ne olduğundan emin değilim yanlış yapmak.C dizesinde kaç karakter bulunduğunda ara
int countLetters(char * const line)
{
char index = *line;
int count;
while(!index)
{
if (index >= 'a' && index <= 'z')
count++;
if (index >= 'A' && index <= 'Z')
count++;
}
return count;
}
> başlatmak deneyin bu içeriği bilmek istiyorum söylüyorsun
bir ile bir işaretçi önüne tarafından dize içindeki dizin-inci karakterden işaret göstericisidir 0 = 0 = Bunu denedim ve farkı yerine getirdim. Sorun NULL karakteri eksik programdan geliyorsa ya da benim ifadelerimdeki parametreler yanlış ise emin değilim. Çoğu zaman benim dönüş değerinim, ~ 50 – RyeMan
olması gerektiğinde binlercedir. Bir şekilde indeksinizi arttırmanız gerekir. Her döngü – rocketspacer
Tamam, mükemmel çalışıyor, ancak çalışıyor, ancak her seferinde -1 kapalı. Kodunu değiştirdim (satır (index ++) + 1]) 'code' düzelti ama neden olduğunu tam olarak anlamıyorum. – RyeMan