Cevabın hayır olduğunu düşünüyorum ve genellikle kaynak koddan geçmekte zorluk çekmiyorum, fakat C/C++ için biraz yeniyim ve bu sabitin nerede bildirildiğini bulamıyorum.Hiç tanımlanmayan/bildirilmeyen bir C sabitine başvurmanın bir yolu var mı?
için The hiredis-vip client library for Redis numaralı telefonu arıyorum. Bunun için bir github/google araması yaptım ve beş oluşum için tam olarak iki dosya elde ettim. Ayrıca kaynak koddaki dize için grep çalıştım.
$ grep -rnw ./ -e "CMD_REQ_REDIS_MGET"
./command.c:241: case CMD_REQ_REDIS_MGET:
./command.c:574: r->type = CMD_REQ_REDIS_MGET;
./hircluster.c:3257: if (command->type == CMD_REQ_REDIS_MGET) {
./hircluster.c:3446: if (command->type == CMD_REQ_REDIS_MGET) {
./hircluster.c:3480: if (command->type == CMD_REQ_REDIS_MGET) {
Kaynak kod hiçbir ikili içermiyor ve kendi kendine yeterli olması gerekiyordu. Redis ile ilgili harici kaynaklardan herhangi bir kütüphane içermez ve bu yüzden birkaç saatliğine kafam karışmış olur.
Bilmem gerekmesinin nedeni, tıpkı bunun gibi başka bir sabit eklemeyi denemem ve beyanın bulunamadığı konusunda hatalar yapmaya devam ediyorum, bu yüzden burada bir kara büyü olup olmadığını merak ediyorum. Sadece farkında olmadığım C.
DÜZENLEME: Bu kodun aslında olduğu gibi derleneceğini belirtmek istedim.
grep'i uygun seviyede yaptığınızdan emin misiniz? Bu tür tanımlar genellikle .h dosyasındadır. –
@ Jean-FrançoisFabre Gitme repo –