open_pointer.pass.cpp revision bc8d3f97eb5c958007f2713238472e0c1c8fe02c
15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//===----------------------------------------------------------------------===// 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// ��������������������The LLVM Compiler Infrastructure 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// This file is distributed under the University of Illinois Open Source 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// License. See LICENSE.TXT for details. 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//===----------------------------------------------------------------------===// 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// <fstream> 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1268043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)// basic_filebuf<charT,traits>* open(const char* s, ios_base::openmode mode); 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <fstream> 15a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)#include <cassert> 16a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 17a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)int main() 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles){ 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) { 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) std::filebuf f; 214e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) assert(f.open("test.dat", std::ios_base::out) != 0); 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(f.is_open()); 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(f.sputn("123", 3) == 3); 2490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) } 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) { 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) std::filebuf f; 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(f.open("test.dat", std::ios_base::in) != 0); 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(f.is_open()); 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(f.sbumpc() == '1'); 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(f.sbumpc() == '2'); 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(f.sbumpc() == '3'); 32a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) } 335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) remove("test.dat"); 345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) { 355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) std::wfilebuf f; 362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) assert(f.open("test.dat", std::ios_base::out) != 0); 372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) assert(f.is_open()); 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(f.sputn(L"123", 3) == 3); 392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) { 415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) std::wfilebuf f; 425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(f.open("test.dat", std::ios_base::in) != 0); 435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(f.is_open()); 445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(f.sbumpc() == L'1'); 455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(f.sbumpc() == L'2'); 465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(f.sbumpc() == L'3'); 475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) remove("test.dat"); 49} 50