char* mystrchr(const char * from, char c)
{
//unsigned uzunluk;
while (*from != '\0')
{
if (c ==*from)
return from;
++from;
}
if (c == '\0')
return from;
return NULL;
}
Hata
header.h: In function `char* mystrchr(const char*, char)':
header.h:51: error: invalid conversion from `const char*' to `char*'
header.h:55: error: invalid conversion from `const char*' to `char*'
bu fonksiyonun yeni bir string döndürmemesi gerekiyor. yani geçiçi birchar dizisi tanımlayıp onu döndürmemem gerekiyor, fakat türleruyuşmadığı içide hata alıyorum, dönmesi gereken tür char* ama dönendeğerin türü ise const char*, bu hatayı nasıl ortadan kaldırabilirim ?
C Kodumda bir hata
OP Taze Üye
Teşekkür Sayısı: 0
9 mesaj
Kayıt Tarihi:Kayıt: Ara 2009
Yıllanmış Üye
Teşekkür Sayısı: 0
2,344 mesaj
Kayıt Tarihi:Kayıt: Ara 2007
fonksiyonun döndürme türünüde const yapın, şu şekilde
const char* mystrchr(const char * from, char c)
OP Taze Üye
Teşekkür Sayısı: 0
9 mesaj
Kayıt Tarihi:Kayıt: Ara 2009
OP Taze Üye
Teşekkür Sayısı: 0
9 mesaj
Kayıt Tarihi:Kayıt: Ara 2009
OP Taze Üye
Teşekkür Sayısı: 0
9 mesaj
Kayıt Tarihi:Kayıt: Ara 2009
Yardımcı olabilecek kimse yokmu tıkandım =)
Çok uzun zaman oldu bu pointerları unutalı bu cast işe yarayabilir;ancak programın işlevi nedir tek bir kod parçacığı değil tümüne bakmalı.
- [ Tüm kodu seç ] [ Yeni Pencerede Göster ]
char* mystrchr(const char * from, char c) { //unsigned uzunluk; while (*from != '\0') { if (c ==*from) return (char*)from; ++from; } if (c == '\0') return (char*)from; return NULL; }
Son Düzenleme: _Neo_ ~ 19 Aralık 2009 14:15
OP Taze Üye
Teşekkür Sayısı: 0
9 mesaj
Kayıt Tarihi:Kayıt: Ara 2009
sorun çözüldü (char*) from ile işlem tamamladı hata yok ;)