Konwersja z typu wskaźnika i
Wskaźnik do jednego typu wartości można przekonwertować na wskaźnik do innego typu.Jednakże wynik może być niezdefiniowana, ze względu na wymagania co do wyrównania i rozmiary różnych typów magazynowania.Wskaźnik do obiektu można przekonwertować na wskaźnik do obiektu, którego typ wymaga mniej lub jednakowo ścisłe składowania wyrównania i z powrotem ponownie bez zmian.
Wskaźnik do void mogą być konwertowane, do lub z wskaźnik do dowolnego typu, bez ograniczeń lub utratę informacji.Wynik konwertowany jest na powrót do oryginalnego typu, odzyskać oryginalny wskaźnik.
Jeżeli wskaźnik jest konwertowany na inny wskaźnik z tego samego typu, ale o różnych lub dodatkowe kwalifikatory, nowy wskaźnik jest taka sama, jak stare, z wyjątkiem dla ograniczeń nałożonych przez nowy kwalifikator.
Wartość wskaźnika można skonwertować także wartością całkowitą.Ścieżka konwersji zależy od rozmiaru wskaźnika i rozmiar typu integralną, zgodnie z następującymi zasadami:
Jeśli rozmiar wskaźnika jest większa niż lub równy rozmiarowi typem całkowitym, wskaźnik zachowuje się jak wartość bez znaku, w wyniku konwersji, z wyjątkiem, że nie można przekonwertować na wartość Zmienna.
Jeżeli wskaźnik jest mniejszy niż typem całkowitym, wskaźnik jest najpierw konwertowany na wskaźnik w taki sam rozmiar jak typ integralną, następnie konwertowane na typ integralny.
Odwrotnie typ integralny można konwertować na typ wskaźnika, zgodnie z następującymi zasadami:
Jeśli typem całkowitym jest taki sam rozmiar jak typ wskaźnika, konwersja powoduje po prostu integralną wartości powinien być traktowany jako wskaźnik (liczba całkowita bez znaku).
Jeśli rozmiar typem całkowitym różni się od rozmiaru typ wskaźnika, typem całkowitym jest najpierw konwertowany do rozmiaru wskaźnika, przy użyciu ścieżki konwersji podanych w tabelach konwersji typów integralną podpisane i konwersji typów integralną niepodpisane.Następnie jest ona traktowana jako wartość wskaźnika.
Integralną wyrażenie stałe na wartość 0 lub takie wyrażenie rzutować typu void * można przekonwertować przypisania typu oddanych przez lub porównania wskaźnika dowolnego typu.To daje wskaźnik zerowy, równą inny wskaźnik zerowy tego samego typu, ale ten wskaźnik null nie jest równa każdy wskaźnik do funkcji lub do obiektu.Wartości całkowitych innych niż stała 0 można konwertować na typ wskaźnika, ale wynik nie jest przenośny.