Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.81/26: Рейтинг темы: голосов - 26, средняя оценка - 4.81
4 / 4 / 1
Регистрация: 02.10.2015
Сообщений: 40
1

Как присвоить переменной типа int пустое значение?

20.10.2015, 19:38. Просмотров 4817. Ответов 21
Метки нет (Все метки)

как присвоить int переменной пустое значение. Не просто "0", а совсем пустоту
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.10.2015, 19:38
Ответы с готовыми решениями:

Как на этапе объявления присвоить переменной типа TPoint какое-либо значение?
Ну собственно весь вопрос в сабже. Если кому не понятно, приведу пример, вот допустим блок...

Как присвоить значение одного из элементов массива типа char переменной типа int?
С++ начал буквально только что так что буду благодарен за терпение и понимание ) Сразу оговорюсь...

Типы переменных (как в Qt присвоить значение переменной типа int строке QString?)
Добрый вечер! Возник вот такой вопрос: Как в Qt присвоить значение переменной типа int строке...

Невозможно переменной присвоить значение типа int
byte a = 100, b = 1, c; c = a*b/2; подскажите, пожалуйста, почему компилятор выдает здесь...

21
2645 / 2268 / 278
Регистрация: 24.12.2010
Сообщений: 13,725
20.10.2015, 19:40 2
"совсем пустоту" - в смысле дырку от бублика ?
0
3495 / 2982 / 803
Регистрация: 29.08.2013
Сообщений: 19,936
Записей в блоге: 1
20.10.2015, 19:41 3
Delphi
1
2
3
4
5
procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
begin
  i:=null;
end;
1
4 / 4 / 1
Регистрация: 02.10.2015
Сообщений: 40
20.10.2015, 19:41  [ТС] 4
mss, ну... да, чтобы, когда я ее вызываю, ничего не выводилось
0
2645 / 2268 / 278
Регистрация: 24.12.2010
Сообщений: 13,725
20.10.2015, 19:44 5
Цитата Сообщение от Bugmenot1 Посмотреть сообщение
когда я ее вызываю
А как ты ее "вызываешь" ?
Выражение "Вызывать переменную" у меня почему-то вызывает ассоциацию с призывным кличем Тарзана)..
0
4 / 4 / 1
Регистрация: 02.10.2015
Сообщений: 40
20.10.2015, 19:45  [ТС] 6
qwertehok, пробовал, да только он ругается
http://upload.akusherstvo.ru/image868543.png
0
3495 / 2982 / 803
Регистрация: 29.08.2013
Сообщений: 19,936
Записей в блоге: 1
20.10.2015, 19:45 7
Bugmenot1,
а ваш скрин я не вижу - мелко очень

у меня XE10 - у меня не ругается
1
4 / 4 / 1
Регистрация: 02.10.2015
Сообщений: 40
20.10.2015, 19:50  [ТС] 8
mss, ну к примеру вывожу в лэйбл
Delphi
1
Label1.Caption:=IntToStr(x)
Добавлено через 21 секунду
Цитата Сообщение от qwertehok Посмотреть сообщение
а ваш скрин я не вижу - мелко очень
перезалил

Добавлено через 2 минуты
Цитата Сообщение от qwertehok Посмотреть сообщение
у меня XE10 - у меня не ругается
у меня Delphi 7, может в этом беда?
0
3495 / 2982 / 803
Регистрация: 29.08.2013
Сообщений: 19,936
Записей в блоге: 1
20.10.2015, 19:50 9
Bugmenot1,

заведите себе число 999
и делайте

Delphi
1
if i=999 then Label1.Caption:='' else Label1.Caption:=IntToStr(x)
если хотите пустоту пусть переменная будет не Integer, a Variant
1
2645 / 2268 / 278
Регистрация: 24.12.2010
Сообщений: 13,725
20.10.2015, 19:50 10
Цитата Сообщение от Bugmenot1 Посмотреть сообщение
ну к примеру вывожу
"Вывожу" все-таки не "вызываю")

Одну строчку кода добавить совсем не судьба ?
Delphi
1
2
if blabla then
  Label1.Caption:=IntToStr(x)
1
4 / 4 / 1
Регистрация: 02.10.2015
Сообщений: 40
20.10.2015, 19:55  [ТС] 11
mss, qwertehok, ну нет. У меня есть 3 кнопочки.
1. Записывает числа из лэйбла в переменную(x)
2. Выводит в лэйбл эту переменную(x)
3. Должна обнулять переменную(x)
И получается, если я нажму кнопку 3, кнопка 2 у меня ничего не должна делать. Как то так
0
3495 / 2982 / 803
Регистрация: 29.08.2013
Сообщений: 19,936
Записей в блоге: 1
20.10.2015, 19:59 12
Bugmenot1,
чем отличается 1 и 2

если не должна ничего делать придумай проверку
1
4 / 4 / 1
Регистрация: 02.10.2015
Сообщений: 40
20.10.2015, 20:02  [ТС] 13
qwertehok, представим, что это не лэйб, а эдит, в который мы можем накалякать с клавы, это не суть
0
2645 / 2268 / 278
Регистрация: 24.12.2010
Сообщений: 13,725
20.10.2015, 20:06 14
Цитата Сообщение от Bugmenot1 Посмотреть сообщение
если я нажму кнопку 3, кнопка 2 у меня ничего не должна делать
Это с какого же перепугу ?

Ноль - такое же равноправное число, как и любое другое. Чем оно хуже других ? Почему его нельзя показывать ?
1
4 / 4 / 1
Регистрация: 02.10.2015
Сообщений: 40
20.10.2015, 20:14  [ТС] 15
mss, Тогда весь смысл теряется :с
0
2645 / 2268 / 278
Регистрация: 24.12.2010
Сообщений: 13,725
20.10.2015, 20:23 16
Так а его и не было, смысла-то ..

Вот если бы 3-я кнопка чистила бы лейбл - это имело бы смысл..
Тогда и блажь с "совсем пустотой" не пришла бы в голову)

Но если уж она пришла, тогда проще отказаться от другой блажи - типа Integer, и заменить его типом Variant.

"Совсем пустоту" в такую переменную записать проще простого - присвоив ей спец.значение Unassigned

А проверка на "совсем пустоту" - VarIsEmpty()
1
4 / 4 / 1
Регистрация: 02.10.2015
Сообщений: 40
20.10.2015, 20:27  [ТС] 17
mss, спасибо, но я уже решил через if сделать, как вы и предлагали
0
2057 / 1218 / 429
Регистрация: 29.05.2013
Сообщений: 5,460
20.10.2015, 20:34 18
У вас невыполнимое желание в рамках поставленного условия. Не бывает круглого квадрата.
Если вы выбрали int в качестве типа хранения данных, то ничего кроме предусмотренного числового диапазона вы в него не запихаете. Понятие null относится к типу variant, так и используйте variant.
0
3495 / 2982 / 803
Регистрация: 29.08.2013
Сообщений: 19,936
Записей в блоге: 1
20.10.2015, 20:37 19
Пытливый,
а почему Null прокатывает в XE10?
0
mss
20.10.2015, 20:43     Как присвоить переменной типа int пустое значение?
  #20

Не по теме:

почему Null прокатывает в XE10?
Видимо как раз потому что такие вот пытливые умы проели всю плешь Эмбаркадере)

"Да нате, нате вам вожделенную дырку от бублика в любую переменную, только отстаньте !" - пробухтели в Эмбаркадере, после чего с горя продались с потрохами, дабы более не терпеть позор и унижение)

0
20.10.2015, 20:43
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.10.2015, 20:43
Привет! Вот еще темы с ответами:

Присвоить переменной типа int значение, введенное в TextBox
как, куда и как прописать ToString ?

Присвоить переменной Char значение третьего байта переменно типа Int
всем привет, на одном собеседовании передо мной поставили следующую задачу, присвоить переменной...

Как присвоить такое значение переменной int
есть две переменные типа int int x=2; int y=3; я хочу чтобы третья переменная Z(тоже тип...

Значение типа int нельзя присвоить сущности типа int
значение типа int нельзя присвоить сущности типа int подскажите с исправлением ошибки ст 26.27 ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.