Merhabalar , Öncelikle şu önemli bilgiyi söylemek isterim : c programlama dilinde karakter dizileri , tuttuğu dizinin ilk karakterini işaret eder char ad[20] = "isim";
printf("%d",ad==&ad[0]);
bu kod 1 degerini döndürür burdan da anlaşılabilir bu.bu yüzden aslında sen iki isimi karşılaştırmaya çalıştığında iki ismin baş karakterlerinin bellekteki adresini karşılaştırıyorsun ki zaten bunlar eşit olamaz bunun için kendin şöyle bir fonksiyon yazabilirsin
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int karsilastir(char *isim1,char *isim2){
if (strlen(isim1) != strlen(isim2)){
return 0;
}
unsigned long int harfsayi = strlen(isim1);//veya strlen(isim2)
for (int i=0;i<harfsayi;i++){
if (isim1[i] != isim2[i]){
return 0;
}
}
return 1;
}
int main(){
char ad[20] = "isim";
char ad2[20] = "isim";
printf("%d",karsilastir(ad, ad2));
}
veya string.h
kütüphanesinde bulunan strcmp'yi kullanabilirsin.üstte yazdığım fonksiyon farklı veya daha kolay şekilde yazılabilir bunu sadece örnek olsun diye verdim.