本文整理汇总了C++中my_facet类的典型用法代码示例。如果您正苦于以下问题:C++ my_facet类的具体用法?C++ my_facet怎么用?C++ my_facet使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了my_facet类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: test_neg_one
void test_neg_one() {
const my_facet f(1);
std::ios ios(0);
T v = static_cast<T>(42);
{
const char str[] = "-1";
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == T(-1));
}
v = 42;
{
const char str[] = "-";
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.failbit);
assert(v == 0);
}
}
开发者ID:llvm-mirror,项目名称:libcxx,代码行数:28,代码来源:test_neg_one.pass.cpp
示例2: main
int main()
{
char str[200];
output_iterator<char*> iter;
tm t;
t.tm_sec = 6;
t.tm_min = 3;
t.tm_hour = 13;
t.tm_mday = 2;
t.tm_mon = 4;
t.tm_year = 109;
t.tm_wday = 6;
t.tm_yday = -1;
t.tm_isdst = 1;
std::ios ios(0);
{
const my_facet f(LOCALE_en_US_UTF_8, 1);
std::string pat("Today is %A which is abreviated %a.");
iter = f.put(output_iterator<char*>(str), ios, '*', &t,
pat.data(), pat.data() + pat.size());
std::string ex(str, iter.base());
assert(ex == "Today is Saturday which is abreviated Sat.");
}
{
const my_facet f(LOCALE_fr_FR_UTF_8, 1);
std::string pat("Today is %A which is abreviated %a.");
iter = f.put(output_iterator<char*>(str), ios, '*', &t,
pat.data(), pat.data() + pat.size());
std::string ex(str, iter.base());
assert((ex == "Today is Samedi which is abreviated Sam.")||
(ex == "Today is samedi which is abreviated sam." ));
}
}
开发者ID:Bigcheese,项目名称:libcxx,代码行数:33,代码来源:put1.pass.cpp
示例3: main
int main()
{
const my_facet f(1);
std::ios ios(0);
{
const char str[] = "0x0";
std::ios_base::iostate err = ios.goodbit;
void* p;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, p);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(p == 0);
}
{
const char str[] = "0x73";
std::ios_base::iostate err = ios.goodbit;
void* p;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, p);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(p == (void*)0x73);
}
}
开发者ID:,项目名称:,代码行数:29,代码来源:
示例4: main
int main()
{
const my_facet f(1);
{
std::ios ios(0);
void* v = 0;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "0x0");
}
}
开发者ID:lygstate,项目名称:libcxx,代码行数:12,代码来源:put_pointer.pass.cpp
示例5: main
int main()
{
std::ios ios(0);
std::ios_base::iostate err;
std::tm t;
{
const my_facet f(LOCALE_en_US_UTF_8, 1);
const char in[] = "06/10/2009";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_date(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t);
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_mon == 5);
assert(t.tm_mday == 10);
assert(t.tm_year == 109);
assert(err == std::ios_base::eofbit);
}
{
const my_facet f(LOCALE_fr_FR_UTF_8, 1);
const char in[] = "10.06.2009";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_date(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t);
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_mon == 5);
assert(t.tm_mday == 10);
assert(t.tm_year == 109);
assert(err == std::ios_base::eofbit);
}
{
const my_facet f(LOCALE_ru_RU_UTF_8, 1);
const char in[] = "10.06.2009";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_date(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t);
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_mon == 5);
assert(t.tm_mday == 10);
assert(t.tm_year == 109);
assert(err == std::ios_base::eofbit);
}
{
const my_facet f(LOCALE_zh_CN_UTF_8, 1);
const char in[] = "2009/06/10";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_date(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t);
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_mon == 5);
assert(t.tm_mday == 10);
assert(t.tm_year == 109);
assert(err == std::ios_base::eofbit);
}
}
开发者ID:0xDEC0DE8,项目名称:ndk,代码行数:54,代码来源:get_date.pass.cpp
示例6: main
int main()
{
std::ios ios(0);
std::ios_base::iostate err;
std::tm t;
{
const my_facet f("en_US", 1);
const wchar_t in[] = L"06/10/2009";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_date(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t);
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_mon == 5);
assert(t.tm_mday == 10);
assert(t.tm_year == 109);
assert(err == std::ios_base::eofbit);
}
{
const my_facet f("fr_FR", 1);
const wchar_t in[] = L"10.06.2009";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_date(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t);
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_mon == 5);
assert(t.tm_mday == 10);
assert(t.tm_year == 109);
assert(err == std::ios_base::eofbit);
}
{
const my_facet f("ru_RU", 1);
const wchar_t in[] = L"10.06.2009";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_date(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t);
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_mon == 5);
assert(t.tm_mday == 10);
assert(t.tm_year == 109);
assert(err == std::ios_base::eofbit);
}
{
const my_facet f("zh_CN", 1);
const wchar_t in[] = L"2009/06/10";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_date(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t);
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_mon == 5);
assert(t.tm_mday == 10);
assert(t.tm_year == 109);
assert(err == std::ios_base::eofbit);
}
}
开发者ID:lygstate,项目名称:libcxx,代码行数:54,代码来源:get_date_wide.pass.cpp
示例7: main
int main()
{
const my_facet f(1);
{
std::ios ios(0);
{
bool v = false;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "0");
}
{
bool v = true;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "1");
}
}
{
std::ios ios(0);
boolalpha(ios);
{
bool v = false;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "false");
}
{
bool v = true;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "true");
}
}
{
std::ios ios(0);
boolalpha(ios);
ios.imbue(std::locale(std::locale::classic(), new my_numpunct));
{
bool v = false;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "no");
}
{
bool v = true;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "yes");
}
}
}
开发者ID:Bigcheese,项目名称:libcxx,代码行数:58,代码来源:put_bool.pass.cpp
示例8: main
int main(int, char**)
{
const my_facet f(1);
std::ios ios(0);
unsigned long v = static_cast<unsigned long>(-1);
{
const char str[] = "0";
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == 0);
}
{
const char str[] = "1";
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == 1);
}
hex(ios);
{
const char str[] = "0xFFFFFFFF";
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == 0xFFFFFFFF);
}
return 0;
}
开发者ID:ingowald,项目名称:llvm-project,代码行数:42,代码来源:get_unsigned_long.pass.cpp
示例9: main
int main()
{
std::ios ios(0);
std::ios_base::iostate err;
std::tm t;
{
const my_facet f(LOCALE_en_US_UTF_8, 1);
const char in[] = "Monday";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_weekday(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t);
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_wday == 1);
assert(err == std::ios_base::eofbit);
}
{
const my_facet f(LOCALE_fr_FR_UTF_8, 1);
const char in[] = "Lundi";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_weekday(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t);
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_wday == 1);
assert(err == std::ios_base::eofbit);
}
{
const my_facet f(LOCALE_ru_RU_UTF_8, 1);
const char in[] = "\xD0\xBF\xD0\xBE\xD0\xBD\xD0\xB5"
"\xD0\xB4\xD0\xB5\xD0\xBB\xD1\x8C"
"\xD0\xBD\xD0\xB8\xD0\xBA";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_weekday(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t);
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_wday == 1);
assert(err == std::ios_base::eofbit);
}
{
const my_facet f(LOCALE_zh_CN_UTF_8, 1);
const char in[] = "\xE6\x98\x9F\xE6\x9C\x9F\xE4\xB8\x80";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_weekday(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t);
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_wday == 1);
assert(err == std::ios_base::eofbit);
}
}
开发者ID:Fearful,项目名称:runtime,代码行数:48,代码来源:get_weekday.pass.cpp
示例10: main
int main(int, char**)
{
const my_facet f(1);
std::ios ios(0);
std::ios_base::iostate err;
std::tm t;
{
const char in[] = "2009 May 9, 10:27pm";
const char fmt[] = "%Y %b %d, %I:%M%p";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get(I(in), I(in+sizeof(in)-1), ios, err, &t, fmt, fmt+sizeof(fmt)-1);
assert(i.base() == in+sizeof(in)-1);
assert(t.tm_year == 109);
assert(t.tm_mon == 4);
assert(t.tm_mday == 9);
assert(t.tm_hour == 22);
assert(t.tm_min == 27);
assert(err == std::ios_base::eofbit);
}
{
const char in[] = "10:27PM May 9, 2009";
const char fmt[] = "%I:%M%p %b %d, %Y";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get(I(in), I(in+sizeof(in)-1), ios, err, &t, fmt, fmt+sizeof(fmt)-1);
assert(i.base() == in+sizeof(in)-1);
assert(t.tm_year == 109);
assert(t.tm_mon == 4);
assert(t.tm_mday == 9);
assert(t.tm_hour == 22);
assert(t.tm_min == 27);
assert(err == std::ios_base::eofbit);
}
return 0;
}
开发者ID:ingowald,项目名称:llvm-project,代码行数:37,代码来源:get_many.pass.cpp
示例11: main
int main(int, char**)
{
{
const my_facet f(LOCALE_en_US_UTF_8, 1);
assert(f.date_order() == std::time_base::mdy);
}
{
const my_facet f(LOCALE_fr_FR_UTF_8, 1);
assert(f.date_order() == std::time_base::dmy);
}
{
const my_facet f(LOCALE_ru_RU_UTF_8, 1);
assert(f.date_order() == std::time_base::dmy);
}
{
const my_facet f(LOCALE_zh_CN_UTF_8, 1);
assert(f.date_order() == std::time_base::ymd);
}
return 0;
}
开发者ID:ingowald,项目名称:llvm-project,代码行数:21,代码来源:date_order_wide.pass.cpp
示例12: main
int main()
{
const my_facet f(1);
std::ios ios(0);
{
const char str[] = "1";
std::ios_base::iostate err = ios.goodbit;
bool b;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, b);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(b == true);
}
{
const char str[] = "0";
std::ios_base::iostate err = ios.goodbit;
bool b;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, b);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(b == false);
}
{
const char str[] = "12";
std::ios_base::iostate err = ios.goodbit;
bool b;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, b);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.failbit);
assert(b == true);
}
{
const char str[] = "*12";
std::ios_base::iostate err = ios.goodbit;
bool b;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, b);
assert(iter.base() == str+0);
assert(err == ios.failbit);
assert(b == false);
}
boolalpha(ios);
{
const char str[] = "1";
std::ios_base::iostate err = ios.goodbit;
bool b;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, b);
assert(iter.base() == str+0);
assert(err == ios.failbit);
assert(b == false);
}
{
const char str[] = "true";
std::ios_base::iostate err = ios.goodbit;
bool b;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, b);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(b == true);
}
{
const char str[] = "false";
std::ios_base::iostate err = ios.goodbit;
bool b;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, b);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(b == false);
}
ios.imbue(std::locale(ios.getloc(), new p1));
{
const char str[] = "a";
std::ios_base::iostate err = ios.goodbit;
bool b;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+1),
ios, err, b);
assert(iter.base() == str+1);
assert(err == ios.eofbit);
//.........这里部分代码省略.........
开发者ID:Bigcheese,项目名称:libcxx,代码行数:101,代码来源:get_bool.pass.cpp
示例13: main
int main()
{
const my_facet f(1);
std::ios ios(0);
float v = -1;
{
const char str[] = "123";
assert((ios.flags() & ios.basefield) == ios.dec);
assert(ios.getloc().name() == "C");
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == 123);
}
{
const char str[] = "-123";
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == -123);
}
{
const char str[] = "123.5";
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == 123.5);
}
{
const char str[] = "125e-1";
hex(ios);
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == 125e-1);
}
{
const char str[] = "0x125p-1";
hex(ios);
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == hexfloat<float>(0x125, 0, -1));
}
{
const char str[] = "inf";
hex(ios);
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == INFINITY);
}
{
const char str[] = "INF";
hex(ios);
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == INFINITY);
}
{
const char str[] = "-inf";
hex(ios);
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == -INFINITY);
}
//.........这里部分代码省略.........
开发者ID:MIPS,项目名称:external-libcxx,代码行数:101,代码来源:get_float.pass.cpp
示例14: main
int main()
{
std::ios ios(0);
std::ios_base::iostate err;
std::tm t;
{
const my_facet f(LOCALE_en_US_UTF_8, 1);
const wchar_t in[] = L"Sat Dec 31 23:55:59 2061";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t, 'c');
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_sec == 59);
assert(t.tm_min == 55);
assert(t.tm_hour == 23);
assert(t.tm_mday == 31);
assert(t.tm_mon == 11);
assert(t.tm_year == 161);
assert(t.tm_wday == 6);
assert(err == std::ios_base::eofbit);
}
{
const my_facet f(LOCALE_en_US_UTF_8, 1);
const wchar_t in[] = L"23:55:59";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t, 'X');
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_sec == 59);
assert(t.tm_min == 55);
assert(t.tm_hour == 23);
assert(err == std::ios_base::eofbit);
}
{
const my_facet f(LOCALE_fr_FR_UTF_8, 1);
const wchar_t in[] = L"Sam 31 d" L"\xE9" L"c 23:55:59 2061";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t, 'c');
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_sec == 59);
assert(t.tm_min == 55);
assert(t.tm_hour == 23);
assert(t.tm_mday == 31);
assert(t.tm_mon == 11);
assert(t.tm_year == 161);
assert(t.tm_wday == 6);
assert(err == std::ios_base::eofbit);
}
{
const my_facet f(LOCALE_fr_FR_UTF_8, 1);
const wchar_t in[] = L"23:55:59";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t, 'X');
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_sec == 59);
assert(t.tm_min == 55);
assert(t.tm_hour == 23);
assert(err == std::ios_base::eofbit);
}
#ifdef __APPLE__
{
const my_facet f("ru_RU", 1);
const wchar_t in[] = L"\x441\x443\x431\x431\x43E\x442\x430"
L", 31 "
L"\x434\x435\x43A\x430\x431\x440\x44F"
L" 2061 "
L"\x433"
L". 23:55:59";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t, 'c');
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_sec == 59);
assert(t.tm_min == 55);
assert(t.tm_hour == 23);
assert(t.tm_mday == 31);
assert(t.tm_mon == 11);
assert(t.tm_year == 161);
assert(t.tm_wday == 6);
assert(err == std::ios_base::eofbit);
}
#endif
{
const my_facet f(LOCALE_ru_RU_UTF_8, 1);
const wchar_t in[] = L"23:55:59";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get(I(in), I(in+sizeof(in)/sizeof(in[0])-1), ios, err, &t, 'X');
assert(i.base() == in+sizeof(in)/sizeof(in[0])-1);
assert(t.tm_sec == 59);
assert(t.tm_min == 55);
assert(t.tm_hour == 23);
assert(err == std::ios_base::eofbit);
}
#ifdef __APPLE__
{
const my_facet f("zh_CN", 1);
const wchar_t in[] = L"\x516D"
//.........这里部分代码省略.........
开发者ID:Aj0Ay,项目名称:libcxx,代码行数:101,代码来源:get_one_wide.pass.cpp
示例15: main
int main()
{
const my_facet f(1);
{
std::ios ios(0);
unsigned long long v = 0;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "0");
}
{
std::ios ios(0);
unsigned long long v = 1;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "1");
}
{
std::ios ios(0);
unsigned long long v = -1;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == (sizeof(unsigned long long) == 4 ? "4294967295" : "18446744073709551615"));
}
{
std::ios ios(0);
unsigned long long v = -1000;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "18446744073709550616");
}
{
std::ios ios(0);
unsigned long long v = 1000;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "1000");
}
{
std::ios ios(0);
showpos(ios);
unsigned long long v = 1000;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "1000");
}
{
std::ios ios(0);
oct(ios);
unsigned long long v = 1000;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "1750");
}
{
std::ios ios(0);
oct(ios);
showbase(ios);
unsigned long long v = 1000;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "01750");
}
{
std::ios ios(0);
hex(ios);
unsigned long long v = 1000;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "3e8");
}
{
std::ios ios(0);
hex(ios);
showbase(ios);
unsigned long long v = 1000;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "0x3e8");
}
{
std::ios ios(0);
hex(ios);
showbase(ios);
uppercase(ios);
unsigned long long v = 1000;
char str[50];
output_iterator<char*> iter = f.put(output_iterator<char*>(str), ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "0X3E8");
//.........这里部分代码省略.........
开发者ID:32bitmicro,项目名称:libcxx,代码行数:101,代码来源:put_unsigned_long_long.pass.cpp
示例16: main
int main()
{
const my_facet f(1);
std::ios ios(0);
long v = -1;
{
const char str[] = "123";
assert((ios.flags() & ios.basefield) == ios.dec);
assert(ios.getloc().name() == "C");
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+3);
assert(err == ios.goodbit);
assert(v == 123);
}
{
const char str[] = "-123";
assert((ios.flags() & ios.basefield) == ios.dec);
assert(ios.getloc().name() == "C");
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+4);
assert(err == ios.goodbit);
assert(v == -123);
}
{
const char str[] = "123";
oct(ios);
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+3);
assert(err == ios.goodbit);
assert(v == 83);
}
{
const char str[] = "123";
hex(ios);
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+3);
assert(err == ios.goodbit);
assert(v == 291);
}
{
const char str[] = "0x123";
hex(ios);
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == 291);
}
{
const char str[] = "123";
ios.setf(0, ios.basefield);
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == 123);
}
{
const char str[] = "0x123";
ios.setf(0, ios.basefield);
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
assert(err == ios.goodbit);
assert(v == 291);
}
{
const char str[] = "0123";
ios.setf(0, ios.basefield);
std::ios_base::iostate err = ios.goodbit;
input_iterator<const char*> iter =
f.get(input_iterator<const char*>(str),
input_iterator<const char*>(str+sizeof(str)),
ios, err, v);
assert(iter.base() == str+sizeof(str)-1);
//.........这里部分代码省略.........
开发者ID:Bigcheese,项目名称:libcxx,代码行数:101,代码来源:get_long.pass.cpp
示例17: main
int main()
{
const my_facet f(1);
std::ios ios(0);
std::ios_base::iostate err;
std::tm t;
{
const char in[] = "0:0:0";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_time(I(in), I(in+sizeof(in)-1), ios, err, &t);
assert(i.base() == in+sizeof(in)-1);
assert(t.tm_hour == 0);
assert(t.tm_min == 0);
assert(t.tm_sec == 0);
assert(err == std::ios_base::eofbit);
}
{
const char in[] = "23:59:60";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_time(I(in), I(in+sizeof(in)-1), ios, err, &t);
assert(i.base() == in+sizeof(in)-1);
assert(t.tm_hour == 23);
assert(t.tm_min == 59);
assert(t.tm_sec == 60);
assert(err == std::ios_base::eofbit);
}
{
const char in[] = "24:59:60";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_time(I(in), I(in+sizeof(in)-1), ios, err, &t);
assert(i.base() == in+2);
assert(t.tm_hour == 0);
assert(t.tm_min == 0);
assert(t.tm_sec == 0);
assert(err == std::ios_base::failbit);
}
{
const char in[] = "23:60:60";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_time(I(in), I(in+sizeof(in)-1), ios, err, &t);
assert(i.base() == in+5);
// assert(t.tm_hour == 0);
// assert(t.tm_min == 0);
// assert(t.tm_sec == 0);
assert(err == std::ios_base::failbit);
}
{
const char in[] = "23:59:61";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_time(I(in), I(in+sizeof(in)-1), ios, err, &t);
assert(i.base() == in+8);
// assert(t.tm_hour == 0);
// assert(t.tm_min == 0);
// assert(t.tm_sec == 0);
assert(err == (std::ios_base::failbit | std::ios_base::eofbit));
}
{
const char in[] = "2:43:221";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_time(I(in), I(in+sizeof(in)-1), ios, err, &t);
assert(i.base() == in+7);
assert(t.tm_hour == 2);
assert(t.tm_min == 43);
assert(t.tm_sec == 22);
assert(err == std::ios_base::goodbit);
}
{
const char in[] = "2.43:221";
err = std::ios_base::goodbit;
t = std::tm();
I i = f.get_time(I(in), I(in+sizeof(in)-1), ios, err, &t);
assert(i.base() == in+1);
// assert(t.tm_hour == 0);
// assert(t.tm_min == 0);
// assert(t.tm_sec == 0);
assert(err == std::ios_base::failbit);
}
}
开发者ID:32bitmicro,项目名称:libcxx,代码行数:84,代码来源:get_time.pass.cpp
示例18: main
int main()
{
std::ios ios(0);
std::string loc_name("en_US");
ios.imbue(std::locale(ios.getloc(),
new std::moneypunct_byname<char, false>(loc_name)));
ios.imbue(std::locale(ios.getloc(),
new std::moneypunct_byname<char, true>(loc_name)));
ios.imbue(std::locale(ios.getloc(),
new std::moneypunct_byname<wchar_t, false>(loc_name)));
ios.imbue(std::locale(ios.getloc(),
new std::moneypunct_byname<wchar_t, true>(loc_name)));
{
const my_facet f(1);
// char, national
{ // zero
long double v = 0;
char str[100];
output_iterator<char*> iter = f.put(output_iterator<char*>(str),
false, ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "0.00");
}
{ // negative one
long double v = -1;
char str[100];
output_iterator<char*> iter = f.put(output_iterator<char*>(str),
false, ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "-0.01");
}
{ // positive
long double v = 123456789;
char str[100];
output_iterator<char*> iter = f.put(output_iterator<char*>(str),
false, ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "1,234,567.89");
}
{ // negative
long double v = -123456789;
char str[100];
output_iterator<char*> iter = f.put(output_iterator<char*>(str),
false, ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "-1,234,567.89");
}
{ // zero, showbase
long double v = 0;
showbase(ios);
char str[100];
output_iterator<char*> iter = f.put(output_iterator<char*>(str),
false, ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "$0.00");
}
{ // negative one, showbase
long double v = -1;
showbase(ios);
char str[100];
output_iterator<char*> iter = f.put(output_iterator<char*>(str),
false, ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "-$0.01");
}
{ // positive, showbase
long double v = 123456789;
showbase(ios);
char str[100];
output_iterator<char*> iter = f.put(output_iterator<char*>(str),
false, ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "$1,234,567.89");
}
{ // negative, showbase
long double v = -123456789;
showbase(ios);
char str[100];
output_iterator<char*> iter = f.put(output_iterator<char*>(str),
false, ios, '*', v);
std::string ex(str, iter.base());
assert(ex == "-$1,234,567.89");
}
{ // negative, showbase, left
long double v = -123456789;
showbase(ios);
ios.width(20);
left(ios);
char str[100];
output_iterator<char*> iter = f.put(output_iterator<char*>(str),
false, ios, ' ', v);
std::string ex(str, iter.base());
assert(ex == "-$1,234,567.89 ");
assert(ios.width() == 0);
}
{ // negative, showbase, internal
long double v = -123456789;
showbase(ios);
ios.width(20);
internal(ios);
//.........这里部分代码省略.........
开发者ID:lygstate,项目名称:libcxx,代码行数:101,代码来源:put_long_double_en_US.pass.cpp
|
请发表评论