30 Kasım 2011, ÇARŞAMBA
Arasındaki fark==[0]C=='\0' NULL str str nedir?
str == NULL
str[0] == '\0'
arasındaki farkı bilmek istiyorum:
int convert_to_float(char *str, double *num)
{
if ((str == NULL) || (str[0] == '\0'))
return(-1);
*num = strtod(str, (char **)NULL);
return(0);
}
Linux üzerinde gcc kullanıyorum.
CEVAP
30 Kasım 2011, ÇARŞAMBA
str==NULL
işaretçi NULL olup olmadığını söyler.
str[0]=='\0'
dize sıfır-uzunlukta olduğunu belirtir.
Bu kod, test:
if ((str == NULL) || (str[0] == '\0'))
ya BOŞ veya bulunduğu durum yakalamak için kullanılır-uzunluğu sıfır.
Kısa devre burada önemli bir rol oynadığını not:Test noktası str
geçerli bir c-dize uzunluğu en az 1 olduğundan emin olun.
- 9* *ikinci test
str
BOŞ değilse, yalnızca çalışır. - Bu nedenle, ilk test
str == NULL
str
BOŞ zaman erken çıkmak gereklidir.
Bunu Paylaş:
Arasındaki fark==[0]C=='\0' ...
Bir URI, URL ve URN arasındaki fark ne...
Aramak ve uygulamak arasındaki fark ne...
@Staticmethod ve @Python classmethod a...
Match_parent ve fill_parent arasındaki...