Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.07.08;
Скачать: CL | DM;

Вниз

Undeclared identifier: Null   Найти похожие ветки 

 
Новичек ©   (2007-06-11 15:39) [0]

Господа Знатоки, почему при вызове API"шной функции при значении одного из параметров "Null" я получаю сабж?
Спасибо.


 
Desdechado ©   (2007-06-11 16:15) [1]

nil


 
Новичек ©   (2007-06-11 16:20) [2]

nil применим к указателям. А, например, в функции SetTimer первым параметром  (типа Handle) может быть Null, но не проходит почему-то :-(
Что интересно, этот пресловутый Null используется повсеместно, а в Delphi его почему-то нет. Странно.


 
Ega23 ©   (2007-06-11 16:21) [3]

uses Variants


 
Новичек ©   (2007-06-11 16:26) [4]

2 Ega23: Но ведь Null там является функцией? А как использовать классический сишный Null? Спасибо.


 
Плохиш ©   (2007-06-11 16:33) [5]


> Новичек ©   (11.06.07 16:20) [2]
> nil применим к указателям. А, например, в функции SetTimer
> первым параметром  (типа Handle) может быть Null

0


 
Новичек ©   (2007-06-11 16:37) [6]

2 Плохиш: Была у меня такая мысль, да отбросил :-(
Сейчас попробовал - работает. Странная реализация в Delphi :-)
Спасибо большое!


 
Sergey Masloff   (2007-06-11 18:15) [7]

Новичек ©   (11.06.07 16:37) [6]
>Странная реализация в Delphi :-)
см. windef.h

#define NULL    0

Чего странного? Или так просто хотелось что-то сказать?


 
Anatoly Podgoretsky ©   (2007-06-11 18:42) [8]

Null в СИ это ноль, а не Varuants.Null, и не nil, и не Null в ДБ, и не определенное значение как это принято, ну посчитали разработчики, что им более подходит NULL ну и поимели постоянные проблемы с этим, им из-за этого пришлось в OLE придумывать новое название.


 
Desdechado ©   (2007-06-11 18:54) [9]

> Null в СИ это ноль
NULL - это вполне себе адресный ноль, типизированная константа. Что непонятного?


 
Однокамушкин   (2007-06-11 21:47) [10]


> Новичек ©   (11.06.07 16:37) [6]
>Странная реализация в Delphi

Ха! В Дельфи странная реализация! Это в С++ она странная! Настолько странная, что сам создатель языка разобраться не может... в первом издании своей книги по С++ Страуструп писал, что для "пустых" указателей лучше не использовать 0, хотя компилятор этого не запрещает, лучше использовать NULL, а в третьем издании писал, что NULL - это только для обратной совместимости, а так лучше это слово не использовать, а писать 0 (про второе издание не знаю, не попадалось)...

> Desdechado ©   (11.06.07 18:54) [9]
> NULL - это вполне себе адресный ноль, типизированная константа.

Какая ж это константа, да ещё и типизированная? NULL - это макроопределение, см. Sergey Masloff   (11.06.07 18:15) [7]



Страницы: 1 вся ветка

Текущий архив: 2007.07.08;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.02 c
4-1170336758
Vladix
2007-02-01 16:32
2007.07.08
Завершение некоторых процессов с одинаковым именем


2-1181775246
rosl
2007-06-14 02:54
2007.07.08
удаление файлов


2-1181986860
Greenchel
2007-06-16 13:41
2007.07.08
Неудача с делением


15-1180880346
Германн
2007-06-03 18:19
2007.07.08
Какая хорошая штука - Медовуха!


15-1180977447
SkySpeed
2007-06-04 21:17
2007.07.08
Как на Assembler подсчитать количество нулевых элементов массива?