NULL
İşaretçiyi, değerinin yerine kullanmam için kullanabilir miyim 0
?
Yoksa bununla ilgili yanlış bir şey mi var?
Mesela, örneğin:
int i = NULL;
yedek olarak:
int i = 0;
Deney olarak aşağıdaki kodu derledim:
#include <stdio.h>
int main(void)
{
int i = NULL;
printf("%d",i);
return 0;
}
Çıktı:
0
Nitekim bana tamamen doğru olan bu uyarıyı veriyor:
warning: initialization makes integer from pointer without a cast [-Wint-conversion]
ancak sonuç hala eşdeğerdir.
- Bununla "Tanımsız Davranış" a geçiyor muyum?
NULL
Bu şekilde kullanılmasına izin veriliyor mu?NULL
Aritmetik ifadelerde sayısal değer olarak kullanmanın yanlış bir yanı var mı ?- Peki bu durum için C ++ 'da sonuç ve davranış nedir?
Ben cevaplarını okumak zorunda '\ 0', NULL arasındaki fark nedir ve 0 arasındaki fark nedir hakkında NULL
, \0
ve 0
bunun doğru kullanımına da oldukça caizdir ve eğer, ama oradan özlü bilgi alamadım NULL
olarak ödevlerde ve diğer aritmetik işlemlerde kullanılacak değer.