Die Funktionen "Int" und "Fix" (Visual Basic)

Aktualisiert: November 2007

Gibt den ganzzahligen Anteil einer Zahl zurück.

Public Shared Function Int( _
    ByVal Number As { Double | Integer | Long | Object | Short | Single | Decimal }) _
    As { Double | Integer | Long | Object | Short | Single | Decimal }
Public Shared Function Fix( _
    ByVal Number As { Double | Integer | Long | Object | Short | Single | Decimal }) _
    As { Double | Integer | Long | Object | Short | Single | Decimal }

Parameter

  • Number
    Erforderlich. Eine Zahl des Typs Double oder ein beliebiger, gültiger numerischer Ausdruck. Wenn Number den Wert Nothing enthält, wird Nothing zurückgegeben.

Ausnahmen

Ausnahmetyp

Fehlernummer

Bedingung

ArgumentNullException

5

Number ist nicht angegeben.

ArgumentException

5

Number ist kein numerischer Typ.

Beachten Sie die Spalte "Fehlernummer", wenn Sie Visual Basic 6.0-Anwendungen aktualisieren, die eine unstrukturierte Fehlerbehandlung verwenden. (Sie können die Fehlernummer mit der Number-Eigenschaft (Err-Objekt) vergleichen.) Wenn möglich, sollten Sie jedoch erwägen, eine solche Fehlersteuerung durch eine Übersicht über die strukturierte Ausnahmebehandlung für Visual Basic zu ersetzen.

Hinweise

Die Funktionen Int und Fix entfernen beide die Nachkommastellen von Number und geben die daraus resultierende ganze Zahl zurück.

Der Unterschied zwischen Int und Fix ist folgender: Wenn Number negativ ist, gibt Int die erste negative ganze Zahl zurück, die kleiner oder gleich Number ist, während Fix die erste negative ganze Zahl zurückgibt, die größer oder gleich Number ist. Int konvertiert beispielsweise –8,4 in –9, während Fix –8,4 in –8 konvertiert.

Fix(number) ist äquivalent zu Sign(number) * Int(Abs(number)).

Beispiel

In diesem Beispiel wird veranschaulicht, wie die Funktionen Int und Fix die ganzzahligen Teile einer Zahl zurückgeben. Im Falle eines Arguments mit negativer Zahl gibt die Int-Funktion die erste negative ganze Zahl zurück, die kleiner oder gleich der Zahl ist, wohingegen die Fix-Funktion die erste negative ganze Zahl zurückgibt, die größer oder gleich der Zahl ist. Beim folgenden Beispiel müssen Sie Option Strict Off angeben, weil implizite Konvertierungen des Typs Double in den Typ Integer unter Option Strict On nicht erlaubt sind:

' This code requires Option Strict Off
Dim MyNumber As Integer
MyNumber = Int(99.8)   ' Returns 99.
MyNumber = Fix(99.8)   ' Returns 99.

MyNumber = Int(-99.8)  ' Returns -100.
MyNumber = Fix(-99.8)  ' Returns -99.

MyNumber = Int(-99.2)  ' Returns -100.
MyNumber = Fix(-99.2)  ' Returns -99.

Sie können die CInt-Funktion verwenden, um andere Datentypen mit Option Strict Off explizit in den Typ Integer zu konvertieren. Mit CInt werden allerdings nicht die Dezimalstellen gekürzt, sondern es wird auf die nächste ganze Zahl gerundet. Beispiel:

MyNumber = CInt(99.8)    ' Returns 100.
MyNumber = CInt(-99.8)   ' Returns -100.
MyNumber = CInt(-99.2)   ' Returns -99.

Sie können die CInt-Funktion auf das Ergebnis eines Aufrufs von Fix oder Int anwenden, um eine explizite Konvertierung in eine ganze Zahl ohne Rundung durchzuführen. Beispiel:

MyNumber = CInt(Fix(99.8))   ' Returns 99.
MyNumber = CInt(Int(99.8))   ' Returns 99.

Weitere Informationen zu CInt finden Sie unter Funktionen für die Typkonvertierung.

Anforderungen

Namespace:Microsoft.VisualBasic

**Modul:**Conversion

**Assembly:**Visual Basic Runtime Library (in Microsoft.VisualBasic.dll)

Siehe auch

Referenz

Funktionen für die Typkonvertierung

Integer-Datentyp (Visual Basic)

Mathematische Operationen: Zusammenfassung

Mathematische Funktionen (Visual Basic)

Konvertierung: Zusammenfassung

ArgumentNullException