Заголовок может быть немного неправильным... только потому, что я не уверен, указывает ли мой указатель char на NULL или он просто указывает на массив символов размер 0.
Итак, у меня есть
char* data = getenv("QUERY_STRING");
И я хочу проверить, являются ли данные нулевыми (или длина < 1). Я пробовал:
if(strlen(data)<1)
, но получаю сообщение об ошибке:
==24945== Invalid read of size 1
==24945== at 0x8048BF9: main (in /cpp.cgi)
==24945== Address 0x1 is not stack'd, malloc'd or (recently) free'd
Я также пытался
if(data == NULL)
, но с тем же результатом.
Что здесь происходит? Я уже пробовал cout с данными, и это работает нормально. Я просто не могу проверить, являются ли они нулевыми или пустыми.
Я понимаю, что это две разные вещи (нулевые и пустые).Я хочу знать, какие данные будут здесь, и как проверить, являются ли они нулевыми/пустыми.