NULL es una macro definida en varias cabeceras estándar, 0 es una constante entera, '\ 0' es un carácter constante, y es nulo el nombre de la constante de caracteres. Todos estos son * no * es intercambiable:
NULL se utiliza para los punteros, ya que sólo se puede definir como ((void *) 0)
, esto podría causar problemas con nada más que los punteros.
0 se puede utilizar en cualquier lugar, es el símbolo genérico para cada tipo de valor cero, y el compilador resolverá las cosas.
'\ 0' se debe utilizar sólo en un contexto de carácter.
nul no está definido en C o C + +, no se debe utilizar a menos que definirlo de una manera adecuada, como:
# Define nulo '\ 0'
No hay comentarios:
Publicar un comentario