##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# std::numpunct::decimal_point, do_decimal_point

From cppreference.com
< cpp‎ | locale‎ | numpunct

Defined in header `<locale>` |  |
public: char_type decimal_point() const; | (1) |
protected: virtual char_type do_decimal_point() const; | (2) |

1) Public member function, calls the member function `do_decimal_point` of the most derived class.
2) Returns the character to be used as the decimal separator between integer and fractional parts.

### [edit] Return value

The object of type `char_type` to use as the thousands separator. The standard specializations of `std::numpunct` return '.' and L'.'.

### [edit] Example

Run this code

    #include <iostream>
    #include <locale>

    struct slash : std::numpunct<char> {
        char do_decimal_point()   const { return '/'; }  // separate with slash
    };

    int main()
    {
        std::cout.precision(10);
        std::cout << "default locale: " << 1234.5678 << '\n';
        std::cout.imbue(std::locale(std::cout.getloc(), new slash));
        std::cout << "locale with modified numpunct: " << 1234.5678 << '\n';
    }

Output:

    default locale: 1234.5678
    locale with modified numpunct: 1234/5678

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=cpp/locale/numpunct/decimal_point&oldid=75891"