2013-08-02 1 views
0

Im пытается показать пустую строку, которая довольно прямолинейна, как их способ отобразить пустое число для целого числа? У меня есть пример ниже.Как отобразить пустую строку, когда переменная не инициализирована?

Sub() 

Dim s As String 
Dim Number As Integer 

'using a space in double quote 
s = " " 

'this will display an empty string, well not really empty but the space will make it empty 
msgbox(s) 

поэтому в основном им пытаются сделать то же самое число, тогда как при использовании MsgBox для него не отображает ничего.

+2

Что разнообразие BASIC? – geoffspear

+0

Зачем вам нужно «пустое» целое число? Вы всегда должны инициализировать свои переменные! – bblincoe

+0

Reulst может быть любым из 'undefined',' 0' или просто случайным, находящимся в пространстве памяти, на которое указывает переменная. Или вы получите сообщение об ошибке. – usr2564301

ответ

1

Вы должны создать функцию для ваших нужд

function ShowNumberNonZero(n) as string 
    if n = 0 then 
     ShowNumberNonZero = "" 
    else 
     ShowNumberNonZero = Trim(n) 
    end if 
end function 

, а затем

msgbox(ShowNumberNonZero(Number)) 
+0

@ Эдуардо Молтени, который смотрит правильно, что я пытаюсь выполнить, я попробую это. – user2634746

1

Если вы не установите число вообще, вызов MsgBox присвоит ему 0 и он будет отображать 0 Единственный способ сделать это так, чтобы он отображал ничего, - это использовать оператор if или функцию.

Это может выглядеть примерно так:

Private Sub Run() 
    Dim number As Integer 
    Message(number) 
End Sub 

Private Sub Message(ByVal input As Integer) 
    If input = 0 Then 
     MsgBox("") 
    Else 
     MsgBox(input) 
    End If 
End Sub 
+0

В соответствии с [секцией помощи] (http://stackoverflow.com/help), пожалуйста, не добавляйте подписи/выписки по вашим вопросам или ответам. –