你能說我在這裏犯了什麼錯誤嗎?當我設置url = NULL
然後通過if(strlen(url)!=0)
或if(url!=NULL)
比較它是否爲空程序崩潰或分解。我知道這很簡單,但我做錯了。在C中使用NULL比較的錯誤
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
void main()
{
char* url="/v1.0/fafffsdf" ;
url=NULL;
printf("%s\n",url);
if(url!=0)
{
printf("It ain't NULL\n");
}
else
{
printf("It's NULL\n");
}
}
你是否在'\ 0'的NULL字符和表示空指針的NULL之間混淆? – Nick
一個次要的nit,縮寫時的空字符是帶有一個L的'NUL'。我認爲這很方便避免與'NULL'宏混淆。我不確定哪個先出現(* ASCII 1963,C 1972 ...我想我有我的答案*)。我不確定哪個或多或少會令人困惑。 – user7116