Problème de débogage avec Visual Studio 2013
mrquebec13
Messages postés
8
Statut
Membre
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
J'essai de déboguer mon programme, mais un message d'erreur apparaît et j'aimerais savoir ou est mon erreur et comment la corriger.
Ce message d'erreur m'apparaît:
'ConsoleApplication3.exe' (Win32) : Chargé 'E:\Visual Studio 2013 projects\ConsoleApplication3\Debug\ConsoleApplication3.exe'. Les symboles ont été chargés.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\ntdll.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\kernel32.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\KernelBase.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\msvcp120d.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\msvcr120d.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\user32.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\gdi32.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\imm32.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\msctf.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\msvcrt.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
Debug Assertion Failed!
Program: C:\Windows\SYSTEM32\MSVCP120D.dll
File: d:\microsoft visual studio\vc\include\xstring
Line: 1168
Expression: invalid null pointer
For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.
(Press Retry to debug the application)
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\uxtheme.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\combase.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\rpcrt4.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\sspicli.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\cryptbase.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\sechost.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\bcryptprimitives.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\dwmapi.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\ole32.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\kernel.appcore.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
Le programme '[18400] ConsoleApplication3.exe' s'est arrêté avec le code 3 (0x3).

Merci d'avance!
J'essai de déboguer mon programme, mais un message d'erreur apparaît et j'aimerais savoir ou est mon erreur et comment la corriger.
#include <iostream>
#include <fstream>
#include <string>
#include <cstdlib>
using namespace std;
int main()
{
fstream fichier("test.txt", ios::out | ios::in | ios::ate);
fichier.open("test.txt", ios::binary | ios::in | ios::out);
if (!fichier) {
fichier.open("test.txt", ios::binary | ios::trunc | ios::out);
fichier.close();
fichier.open("test.txt", ios::binary | ios::in | ios::out);
}
if (!fichier.fail()) {
string ligne;
string text;
string name;
string a = 0;
while (getline(fichier, ligne))
cout << ligne << endl;
cout << endl << "Type the text." << endl;
cin >> text;
cout << endl << "Type the autor\'s name.(If unknown type 0)" << endl;
fichier << text;
if (name != a) {
fichier << "\t-" << name << "\n ";
}
else
fichier << "\n ";
fichier.close();
}
else
cerr << "Impossible d'ouvrir le fichier !" << endl;
system("pause");
return 0;
}
Ce message d'erreur m'apparaît:
'ConsoleApplication3.exe' (Win32) : Chargé 'E:\Visual Studio 2013 projects\ConsoleApplication3\Debug\ConsoleApplication3.exe'. Les symboles ont été chargés.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\ntdll.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\kernel32.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\KernelBase.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\msvcp120d.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\msvcr120d.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\user32.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\gdi32.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\imm32.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\msctf.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\msvcrt.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
Debug Assertion Failed!
Program: C:\Windows\SYSTEM32\MSVCP120D.dll
File: d:\microsoft visual studio\vc\include\xstring
Line: 1168
Expression: invalid null pointer
For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.
(Press Retry to debug the application)
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\uxtheme.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\combase.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\rpcrt4.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\sspicli.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\cryptbase.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\sechost.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\bcryptprimitives.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\dwmapi.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\ole32.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
'ConsoleApplication3.exe' (Win32) : Chargé 'C:\Windows\SysWOW64\kernel.appcore.dll'. Impossible de trouver ou d'ouvrir le fichier PDB.
Le programme '[18400] ConsoleApplication3.exe' s'est arrêté avec le code 3 (0x3).

Merci d'avance!
A voir également:
- Problème de débogage avec Visual Studio 2013
- Word 2013 - Télécharger - Traitement de texte
- Excel 2013 - Télécharger - Tableur
- Powerpoint 2013 - Télécharger - Présentation
- Telecharger fl studio 20 pour pc gratuit complet - Télécharger - Édition & Montage
- Visual petanque - Télécharger - Sport
2 réponses
Si cela peut aider, quand la fenêtre du message d'erreur "Microsoft Visual C++ Runtime Library" apparaît, si je clique sur recommencer le même message d'erreur apparaît et ce code apparaît dans le compilateur(débogueur):
// iosfwd standard header
#pragma once
#ifndef _IOSFWD_
#define _IOSFWD_
#ifndef RC_INVOKED
#include <cstdio>
#include <cstring>
#include <cwchar>
#include <xstddef>
#include <crtdbg.h>
#pragma pack(push,_CRT_PACKING)
#pragma warning(push,3)
#pragma push_macro("new")
#undef new
_STD_BEGIN
// STREAM POSITIONING TYPES (from <streambuf>)
typedef _Longlong streamoff;
typedef _Longlong streamsize;
#define _FSEEK_OFF(str, off, way) _fseeki64(str, off, way)
#define _Fpz 0 /* initializer for zero fpos_t */
#ifdef _M_CEE_PURE
extern const streamoff _BADOFF;
#else /* _M_CEE_PURE */
extern _CRTDATA2 _PGLOBAL const streamoff _BADOFF;
#endif /* _M_CEE_PURE */
// TEMPLATE CLASS fpos (from <streambuf>)
template<class _Statetype>
class fpos
{ // store arbitrary file position
typedef fpos<_Statetype> _Myt;
public:
__CLR_OR_THIS_CALL fpos(streamoff _Off = 0)
: _Myoff(_Off), _Fpos(_Fpz), _Mystate()
{ // construct with stream offset
}
__CLR_OR_THIS_CALL fpos(_Statetype _State, fpos_t _Fileposition)
: _Myoff(0), _Fpos(_Fileposition), _Mystate(_State)
{ // construct with conversion state and C file position
}
_Statetype __CLR_OR_THIS_CALL state() const
{ // return conversion state
return (_Mystate);
}
void __CLR_OR_THIS_CALL state(_Statetype _State)
{ // set conversion state
_Mystate = _State;
}
fpos_t __CLR_OR_THIS_CALL seekpos() const
{ // return C file position
return (_Fpos);
}
__CLR_OR_THIS_CALL operator streamoff() const
{ // return offset
return ((streamoff)(_Myoff + _FPOSOFF(_Fpos)));
}
streamoff __CLR_OR_THIS_CALL operator-(const _Myt& _Right) const
{ // return difference of file positions as an offset
return ((streamoff)*this - (streamoff)_Right);
}
_Myt& __CLR_OR_THIS_CALL operator+=(streamoff _Off)
{ // add offset
_Myoff += _Off;
return (*this);
}
_Myt& __CLR_OR_THIS_CALL operator-=(streamoff _Off)
{ // subtract offset
_Myoff -= _Off;
return (*this);
}
_Myt __CLR_OR_THIS_CALL operator+(streamoff _Off) const
{ // return this + offset
_Myt _Tmp = *this;
return (_Tmp += _Off);
}
_Myt __CLR_OR_THIS_CALL operator-(streamoff _Off) const
{ // return this - offset
_Myt _Tmp = *this;
return (_Tmp -= _Off);
}
bool __CLR_OR_THIS_CALL operator==(const _Myt& _Right) const
{ // test for file position equality
return ((streamoff)*this == (streamoff)_Right);
}
bool __CLR_OR_THIS_CALL operator==(streamoff _Right) const
{ // test for file position equality with streamoff
return ((streamoff)*this == _Right);
}
bool __CLR_OR_THIS_CALL operator!=(const _Myt& _Right) const
{ // test for file position inequality
return (!(*this == _Right));
}
private:
streamoff _Myoff; // stream offset
fpos_t _Fpos; // C file position
_Statetype _Mystate; // current conversion state
};
#define _POS_TYPE_FROM_STATE(postype, state, position) \
postype(state, position)
#define _POS_TYPE_TO_FPOS_T(pos) pos.seekpos()
#define _POS_TYPE_TO_STATE(pos) pos.state()
typedef fpos<_Mbstatet> streampos;
typedef streampos wstreampos;
// TEMPLATE STRUCT _Char_traits (FROM <string>)
template<class _Elem,
class _Int_type>
struct _Char_traits
{ // properties of a string or stream element
typedef _Elem char_type;
typedef _Int_type int_type;
typedef streampos pos_type;
typedef streamoff off_type;
typedef _Mbstatet state_type;
static int __CLRCALL_OR_CDECL compare(
_In_reads_(_Count) const _Elem *_First1,
_In_reads_(_Count) const _Elem *_First2, size_t _Count)
{ // compare [_First1, _First1 + _Count) with [_First2, ...)
for (; 0 < _Count; --_Count, ++_First1, ++_First2)
if (!eq(*_First1, *_First2))
return (lt(*_First1, *_First2) ? -1 : +1);
return (0);
}
static size_t __CLRCALL_OR_CDECL length(_In_z_ const _Elem *_First)
{ // find length of null-terminated sequence
size_t _Count;
for (_Count = 0; !eq(*_First, _Elem()); ++_First)
++_Count;
return (_Count);
}
static _Elem *__CLRCALL_OR_CDECL copy(
_Out_writes_(_Count) _Elem *_First1,
_In_reads_(_Count) const _Elem *_First2, size_t _Count)
{ // copy [_First2, _First2 + _Count) to [_First1, ...)
_Elem *_Next = _First1;
for (; 0 < _Count; --_Count, ++_Next, ++_First2)
assign(*_Next, *_First2);
return (_First1);
}
static _Elem *__CLRCALL_OR_CDECL _Copy_s(
_Out_writes_(_Dest_size) _Elem *_First1, size_t _Dest_size,
_In_reads_(_Count) const _Elem *_First2, size_t _Count)
{ // copy [_First2, _First2 + _Count) to [_First1, ...)
_SCL_SECURE_CRT_VALIDATE(_Count <= _Dest_size, NULL);
return (copy(_First1, _First2, _Count));
}
static const _Elem *__CLRCALL_OR_CDECL find(
_In_reads_(_Count) const _Elem *_First,
size_t _Count, const _Elem& _Ch)
{ // look for _Ch in [_First, _First + _Count)
for (; 0 < _Count; --_Count, ++_First)
if (eq(*_First, _Ch))
return (_First);
return (0);
}
static _Elem *__CLRCALL_OR_CDECL move(
_Out_writes_(_Count) _Elem *_First1,
_In_reads_(_Count) const _Elem *_First2, size_t _Count)
{ // copy [_First2, _First2 + _Count) to [_First1, ...)
_Elem *_Next = _First1;
if (_First2 < _Next && _Next < _First2 + _Count)
for (_Next += _Count, _First2 += _Count; 0 < _Count; --_Count)
assign(*--_Next, *--_First2);
else
for (; 0 < _Count; --_Count, ++_Next, ++_First2)
assign(*_Next, *_First2);
return (_First1);
}
static _Elem *__CLRCALL_OR_CDECL assign(
_Out_writes_(_Count) _Elem *_First,
size_t _Count, _Elem _Ch)
{ // assign _Count * _Ch to [_First, ...)
_Elem *_Next = _First;
for (; 0 < _Count; --_Count, ++_Next)
assign(*_Next, _Ch);
return (_First);
}
static void __CLRCALL_OR_CDECL assign(_Elem& _Left, const _Elem& _Right) _NOEXCEPT
{ // assign an element
_Left = _Right;
}
static bool __CLRCALL_OR_CDECL eq(const _Elem& _Left,
const _Elem& _Right) _NOEXCEPT
{ // test for element equality
return (_Left == _Right);
}
static bool __CLRCALL_OR_CDECL lt(const _Elem& _Left,
const _Elem& _Right) _NOEXCEPT
{ // test if _Left precedes _Right
return (_Left < _Right);
}
static _Elem __CLRCALL_OR_CDECL to_char_type(
const int_type& _Meta) _NOEXCEPT
{ // convert metacharacter to character
return ((_Elem)_Meta);
}
static int_type __CLRCALL_OR_CDECL to_int_type(
const _Elem& _Ch) _NOEXCEPT
{ // convert character to metacharacter
return ((int_type)_Ch);
}
static bool __CLRCALL_OR_CDECL eq_int_type(const int_type& _Left,
const int_type& _Right) _NOEXCEPT
{ // test for metacharacter equality
return (_Left == _Right);
}
static int_type __CLRCALL_OR_CDECL not_eof(
const int_type& _Meta) _NOEXCEPT
{ // return anything but EOF
return (_Meta != eof() ? (int_type)_Meta : (int_type)!eof());
}
static int_type __CLRCALL_OR_CDECL eof() _NOEXCEPT
{ // return end-of-file metacharacter
return ((int_type)EOF);
}
};
// TEMPLATE STRUCT char_traits
template<class _Elem>
struct char_traits
: public _Char_traits<_Elem, long>
{ // properties of a string or stream unknown element
};
#if _HAS_CHAR16_T_LANGUAGE_SUPPORT
// STRUCT char_traits<char16_t>
template<>
struct char_traits<char16_t>
: public _Char_traits<char16_t, unsigned short>
{ // properties of a string or stream char16_t element
};
typedef streampos u16streampos;
// STRUCT char_traits<char32_t>
template<>
struct char_traits<char32_t>
: public _Char_traits<char32_t, unsigned long>
{ // properties of a string or stream char32_t element
};
typedef streampos u32streampos;
#endif /* _HAS_CHAR16_T_LANGUAGE_SUPPORT */
// STRUCT char_traits<wchar_t>
template<>
struct char_traits<wchar_t>
{ // properties of a string or stream wchar_t element
typedef wchar_t _Elem;
typedef _Elem char_type; // for overloads
typedef wint_t int_type;
typedef streampos pos_type;
typedef streamoff off_type;
typedef _Mbstatet state_type;
static int __CLRCALL_OR_CDECL compare(const _Elem *_First1, const _Elem *_First2,
size_t _Count)
{ // compare [_First1, _First1 + _Count) with [_First2, ...)
return (_Count == 0 ? 0
: _CSTD wmemcmp(_First1, _First2, _Count));
}
static size_t __CLRCALL_OR_CDECL length(const _Elem *_First)
{ // find length of null-terminated sequence
return (*_First == 0 ? 0
: _CSTD wcslen(_First));
}
static _Elem *__CLRCALL_OR_CDECL copy(_Elem *_First1, const _Elem *_First2,
size_t _Count)
{ // copy [_First2, _First2 + _Count) to [_First1, ...)
return (_Count == 0 ? _First1
: (_Elem *)_CSTD wmemcpy(_First1, _First2, _Count));
}
static _Elem *__CLRCALL_OR_CDECL _Copy_s(
_Out_writes_(_Size_in_words) _Elem *_First1, size_t _Size_in_words,
_In_reads_(_Count) const _Elem *_First2, size_t _Count)
{ // copy [_First2, _First2 + _Count) to [_First1, ...)
if (0 < _Count)
_CRT_SECURE_WMEMCPY(_First1, _Size_in_words, _First2, _Count);
return (_First1);
}
static const _Elem *__CLRCALL_OR_CDECL find(const _Elem *_First, size_t _Count,
const _Elem& _Ch)
{ // look for _Ch in [_First, _First + _Count)
return (_Count == 0 ? (const _Elem *)0
: (const _Elem *)_CSTD wmemchr(_First, _Ch, _Count));
}
static _Elem *__CLRCALL_OR_CDECL move(_Elem *_First1, const _Elem *_First2,
size_t _Count)
{ // copy [_First2, _First2 + _Count) to [_First1, ...)
return (_Count == 0 ? _First1
: (_Elem *)_CSTD wmemmove(_First1, _First2, _Count));
}
static _Elem *__CLRCALL_OR_CDECL assign(_Elem *_First, size_t _Count,
_Elem _Ch)
{ // assign _Count * _Ch to [_First, ...)
return ((_Elem *)_CSTD wmemset(_First, _Ch, _Count));
}
static void __CLRCALL_OR_CDECL assign(_Elem& _Left, const _Elem& _Right) _NOEXCEPT
{ // assign an element
_Left = _Right;
}
static bool __CLRCALL_OR_CDECL eq(const _Elem& _Left,
const _Elem& _Right) _NOEXCEPT
{ // test for element equality
return (_Left == _Right);
}
static bool __CLRCALL_OR_CDECL lt(const _Elem& _Left,
const _Elem& _Right) _NOEXCEPT
{ // test if _Left precedes _Right
return (_Left < _Right);
}
static _Elem __CLRCALL_OR_CDECL to_char_type(
const int_type& _Meta) _NOEXCEPT
{ // convert metacharacter to character
return (_Meta);
}
static int_type __CLRCALL_OR_CDECL to_int_type(
const _Elem& _Ch) _NOEXCEPT
{ // convert character to metacharacter
return (_Ch);
}
static bool __CLRCALL_OR_CDECL eq_int_type(const int_type& _Left,
const int_type& _Right) _NOEXCEPT
{ // test for metacharacter equality
return (_Left == _Right);
}
static int_type __CLRCALL_OR_CDECL not_eof(
const int_type& _Meta) _NOEXCEPT
{ // return anything but EOF
return (_Meta != eof() ? _Meta : !eof());
}
static int_type __CLRCALL_OR_CDECL eof() _NOEXCEPT
{ // return end-of-file metacharacter
return (WEOF);
}
};
#ifdef _NATIVE_WCHAR_T_DEFINED
// STRUCT char_traits<unsigned short>
template<>
struct char_traits<unsigned short>
{ // properties of a string or stream unsigned short element
typedef unsigned short _Elem;
typedef _Elem char_type; // for overloads
typedef wint_t int_type;
typedef streampos pos_type;
typedef streamoff off_type;
typedef _Mbstatet state_type;
static int __CLRCALL_OR_CDECL compare(const _Elem *_First1, const _Elem *_First2,
size_t _Count)
{ // compare [_First1, _First1 + _Count) with [_First2, ...)
return (_Count == 0 ? 0
: _CSTD wmemcmp((const wchar_t *)_First1,
(const wchar_t *)_First2, _Count));
}
static size_t __CLRCALL_OR_CDECL length(const _Elem *_First)
{ // find length of null-terminated sequence
return (*_First == 0 ? 0
: _CSTD wcslen((const wchar_t *)_First));
}
static _Elem *__CLRCALL_OR_CDECL copy(_Elem *_First1, const _Elem *_First2,
size_t _Count)
{ // copy [_First2, _First2 + _Count) to [_First1, ...)
return (_Count == 0 ? _First1
: (_Elem *)_CSTD wmemcpy((wchar_t *)_First1,
(const wchar_t *)_First2, _Count));
}
static _Elem *__CLRCALL_OR_CDECL _Copy_s(
_Out_writes_(_Size_in_words) _Elem *_First1, size_t _Size_in_words,
_In_reads_(_Count) const _Elem *_First2, size_t _Count)
{ // copy [_First2, _First2 + _Count) to [_First1, ...)
if (0 < _Count)
_CRT_SECURE_WMEMCPY((wchar_t *)_First1, _Size_in_words,
(const wchar_t *)_First2, _Count);
return (_First1);
}
static const _Elem *__CLRCALL_OR_CDECL find(const _Elem *_First, size_t _Count,
const _Elem& _Ch)
{ // look for _Ch in [_First, _First + _Count)
return (_Count == 0 ? (const _Elem *)0
: (const _Elem *)_CSTD wmemchr((const wchar_t *)_First,
_Ch, _Count));
}
static _Elem *__CLRCALL_OR_CDECL move(_Elem *_First1, const _Elem *_First2,
size_t _Count)
{ // copy [_First2, _First2 + _Count) to [_First1, ...)
return (_Count == 0 ? _First1
: (_Elem *)_CSTD wmemmove((wchar_t *)_First1,
(const wchar_t *)_First2, _Count));
}
static _Elem *__CLRCALL_OR_CDECL assign(_Elem *_First, size_t _Count,
_Elem _Ch)
{ // assign _Count * _Ch to [_First, ...)
return ((_Elem *)_CSTD wmemset((wchar_t *)_First, _Ch, _Count));
}
static void __CLRCALL_OR_CDECL assign(_Elem& _Left, const _Elem& _Right) _NOEXCEPT
{ // assign an element
_Left = _Right;
}
static bool __CLRCALL_OR_CDECL eq(const _Elem& _Left,
const _Elem& _Right) _NOEXCEPT
{ // test for element equality
return (_Left == _Right);
}
static bool __CLRCALL_OR_CDECL lt(const _Elem& _Left,
const _Elem& _Right) _NOEXCEPT
{ // test if _Left precedes _Right
return (_Left < _Right);
}
static _Elem __CLRCALL_OR_CDECL to_char_type(const int_type& _Meta) _NOEXCEPT
{ // convert metacharacter to character
return (_Meta);
}
static int_type __CLRCALL_OR_CDECL to_int_type(const _Elem& _Ch) _NOEXCEPT
{ // convert character to metacharacter
return (_Ch);
}
static bool __CLRCALL_OR_CDECL eq_int_type(const int_type& _Left,
const int_type& _Right) _NOEXCEPT
{ // test for metacharacter equality
return (_Left == _Right);
}
static int_type __CLRCALL_OR_CDECL not_eof(const int_type& _Meta) _NOEXCEPT
{ // return anything but EOF
return (_Meta != eof() ? _Meta : !eof());
}
static int_type __CLRCALL_OR_CDECL eof() _NOEXCEPT
{ // return end-of-file metacharacter
return (WEOF);
}
};
#endif /* _NATIVE_WCHAR_T_DEFINED */
// STRUCT char_traits<char> (FROM <string>)
template<> struct char_traits<char>
{ // properties of a string or stream char element
typedef char _Elem;
typedef _Elem char_type;
typedef int int_type;
typedef streampos pos_type;
typedef streamoff off_type;
typedef _Mbstatet state_type;
static int __CLRCALL_OR_CDECL compare(const _Elem *_First1, const _Elem *_First2,
size_t _Count)
{ // compare [_First1, _First1 + _Count) with [_First2, ...)
return (_Count == 0 ? 0
: _CSTD memcmp(_First1, _First2, _Count));
}
static size_t __CLRCALL_OR_CDECL length(const _Elem *_First)
{ // find length of null-terminated string
return (*_First == 0 ? 0
: _CSTD strlen(_First));
}
static _Elem *__CLRCALL_OR_CDECL copy(_Elem *_First1, const _Elem *_First2,
size_t _Count)
{ // copy [_First2, _First2 + _Count) to [_First1, ...)
return (_Count == 0 ? _First1
: (_Elem *)_CSTD memcpy(_First1, _First2, _Count));
}
static _Elem *__CLRCALL_OR_CDECL _Copy_s(
_Out_writes_(_Size_in_bytes) _Elem *_First1, size_t _Size_in_bytes,
_In_reads_(_Count) const _Elem *_First2, size_t _Count)
{ // copy [_First2, _First2 + _Count) to [_First1, ...)
if (0 < _Count)
_CRT_SECURE_MEMCPY(_First1, _Size_in_bytes, _First2, _Count);
return (_First1);
}
static const _Elem *__CLRCALL_OR_CDECL find(const _Elem *_First, size_t _Count,
const _Elem& _Ch)
{ // look for _Ch in [_First, _First + _Count)
return (_Count == 0 ? (const _Elem *)0
: (const _Elem *)_CSTD memchr(_First, _Ch, _Count));
}
static _Elem *__CLRCALL_OR_CDECL move(_Elem *_First1, const _Elem *_First2,
size_t _Count)
{ // copy [_First2, _First2 + _Count) to [_First1, ...)
return (_Count == 0 ? _First1
: (_Elem *)_CSTD memmove(_First1, _First2, _Count));
}
static _Elem *__CLRCALL_OR_CDECL assign(_Elem *_First, size_t _Count,
_Elem _Ch)
{ // assign _Count * _Ch to [_First, ...)
return ((_Elem *)_CSTD memset(_First, _Ch, _Count));
}
static void __CLRCALL_OR_CDECL assign(_Elem& _Left, const _Elem& _Right) _NOEXCEPT
{ // assign an element
_Left = _Right;
}
static bool __CLRCALL_OR_CDECL eq(const _Elem& _Left,
const _Elem& _Right) _NOEXCEPT
{ // test for element equality
return (_Left == _Right);
}
static bool __CLRCALL_OR_CDECL lt(const _Elem& _Left,
const _Elem& _Right) _NOEXCEPT
{ // test if _Left precedes _Right
return ((unsigned char)_Left < (unsigned char)_Right);
}
static _Elem __CLRCALL_OR_CDECL to_char_type(
const int_type& _Meta) _NOEXCEPT
{ // convert metacharacter to character
return ((_Elem)_Meta);
}
static int_type __CLRCALL_OR_CDECL to_int_type(
const _Elem& _Ch) _NOEXCEPT
{ // convert character to metacharacter
return ((unsigned char)_Ch);
}
static bool __CLRCALL_OR_CDECL eq_int_type(const int_type& _Left,
const int_type& _Right) _NOEXCEPT
{ // test for metacharacter equality
return (_Left == _Right);
}
static int_type __CLRCALL_OR_CDECL not_eof(
const int_type& _Meta) _NOEXCEPT
{ // return anything but EOF
return (_Meta != eof() ? _Meta : !eof());
}
static int_type __CLRCALL_OR_CDECL eof() _NOEXCEPT
{ // return end-of-file metacharacter
return (EOF);
}
};
// FORWARD REFERENCES
template<class _Ty>
class allocator;
class ios_base;
template<class _Elem,
class _Traits = char_traits<_Elem> >
class basic_ios;
template<class _Elem,
class _Traits = char_traits<_Elem> >
class istreambuf_iterator;
template<class _Elem,
class _Traits = char_traits<_Elem> >
class ostreambuf_iterator;
template<class _Elem,
class _Traits = char_traits<_Elem> >
class basic_streambuf;
template<class _Elem,
class _Traits = char_traits<_Elem> >
class basic_istream;
template<class _Elem,
class _Traits = char_traits<_Elem> >
class basic_ostream;
template<class _Elem,
class _Traits = char_traits<_Elem> >
class basic_iostream;
template<class _Elem,
class _Traits = char_traits<_Elem>,
class _Alloc = allocator<_Elem> >
class basic_stringbuf;
template<class _Elem,
class _Traits = char_traits<_Elem>,
class _Alloc = allocator<_Elem> >
class basic_istringstream;
template<class _Elem,
class _Traits = char_traits<_Elem>,
class _Alloc = allocator<_Elem> >
class basic_ostringstream;
template<class _Elem,
class _Traits = char_traits<_Elem>,
class _Alloc = allocator<_Elem> >
class basic_stringstream;
template<class _Elem,
class _Traits = char_traits<_Elem> >
class basic_filebuf;
template<class _Elem,
class _Traits = char_traits<_Elem> >
class basic_ifstream;
template<class _Elem,
class _Traits = char_traits<_Elem> >
class basic_ofstream;
template<class _Elem,
class _Traits = char_traits<_Elem> >
class basic_fstream;
#if defined(_DLL_CPPLIB) && !defined(_M_CEE_PURE)
template<class _Elem,
class _InIt >
class num_get;
template<class _Elem,
class _OutIt >
class num_put;
template<class _Elem>
class collate;
#endif /* defined(_DLL_CPPLIB) etc. */
// char TYPEDEFS
typedef basic_ios<char, char_traits<char> > ios;
typedef basic_streambuf<char, char_traits<char> > streambuf;
typedef basic_istream<char, char_traits<char> > istream;
typedef basic_ostream<char, char_traits<char> > ostream;
typedef basic_iostream<char, char_traits<char> > iostream;
typedef basic_stringbuf<char, char_traits<char>,
allocator<char> > stringbuf;
typedef basic_istringstream<char, char_traits<char>,
allocator<char> > istringstream;
typedef basic_ostringstream<char, char_traits<char>,
allocator<char> > ostringstream;
typedef basic_stringstream<char, char_traits<char>,
allocator<char> > stringstream;
typedef basic_filebuf<char, char_traits<char> > filebuf;
typedef basic_ifstream<char, char_traits<char> > ifstream;
typedef basic_ofstream<char, char_traits<char> > ofstream;
typedef basic_fstream<char, char_traits<char> > fstream;
// wchat_t TYPEDEFS
typedef basic_ios<wchar_t, char_traits<wchar_t> > wios;
typedef basic_streambuf<wchar_t, char_traits<wchar_t> >
wstreambuf;
typedef basic_istream<wchar_t, char_traits<wchar_t> > wistream;
typedef basic_ostream<wchar_t, char_traits<wchar_t> > wostream;
typedef basic_iostream<wchar_t, char_traits<wchar_t> > wiostream;
typedef basic_stringbuf<wchar_t, char_traits<wchar_t>,
allocator<wchar_t> > wstringbuf;
typedef basic_istringstream<wchar_t, char_traits<wchar_t>,
allocator<wchar_t> > wistringstream;
typedef basic_ostringstream<wchar_t, char_traits<wchar_t>,
allocator<wchar_t> > wostringstream;
typedef basic_stringstream<wchar_t, char_traits<wchar_t>,
allocator<wchar_t> > wstringstream;
typedef basic_filebuf<wchar_t, char_traits<wchar_t> > wfilebuf;
typedef basic_ifstream<wchar_t, char_traits<wchar_t> > wifstream;
typedef basic_ofstream<wchar_t, char_traits<wchar_t> > wofstream;
typedef basic_fstream<wchar_t, char_traits<wchar_t> > wfstream;
#ifdef _CRTBLD_NATIVE_WCHAR_T
// unsigned short TYPEDEFS
typedef basic_ios<unsigned short, char_traits<unsigned short> > ushios;
typedef basic_streambuf<unsigned short, char_traits<unsigned short> >
ushstreambuf;
typedef basic_istream<unsigned short, char_traits<unsigned short> > ushistream;
typedef basic_ostream<unsigned short, char_traits<unsigned short> > ushostream;
typedef basic_iostream<unsigned short, char_traits<unsigned short> > ushiostream;
typedef basic_stringbuf<unsigned short, char_traits<unsigned short>,
allocator<unsigned short> > ushstringbuf;
typedef basic_istringstream<unsigned short, char_traits<unsigned short>,
allocator<unsigned short> > ushistringstream;
typedef basic_ostringstream<unsigned short, char_traits<unsigned short>,
allocator<unsigned short> > ushostringstream;
typedef basic_stringstream<unsigned short, char_traits<unsigned short>,
allocator<unsigned short> > ushstringstream;
typedef basic_filebuf<unsigned short, char_traits<unsigned short> > ushfilebuf;
typedef basic_ifstream<unsigned short, char_traits<unsigned short> > ushifstream;
typedef basic_ofstream<unsigned short, char_traits<unsigned short> > ushofstream;
typedef basic_fstream<unsigned short, char_traits<unsigned short> > ushfstream;
#endif /* _CRTBLD_NATIVE_WCHAR_T */
#if defined(_DLL_CPPLIB) && !defined(_M_CEE_PURE)
typedef num_get<char, istreambuf_iterator<char, char_traits<char> > >
numget;
typedef num_get<wchar_t, istreambuf_iterator<wchar_t, char_traits<wchar_t> > >
wnumget;
typedef num_put<char, ostreambuf_iterator<char, char_traits<char> > >
numput;
typedef num_put<wchar_t, ostreambuf_iterator<wchar_t, char_traits<wchar_t> > >
wnumput;
typedef collate<char> ncollate;
typedef collate<wchar_t> wcollate;
#endif /* defined(_DLL_CPPLIB) etc. */
_STD_END
#pragma pop_macro("new")
#pragma warning(pop)
#pragma pack(pop)
#endif /* RC_INVOKED */
#endif /* _IOSFWD_ */
/*
* Copyright (c) 1992-2012 by P.J. Plauger. ALL RIGHTS RESERVED.
* Consult your license regarding permissions and restrictions.
V6.00:0009 */
Bonjour pour debuguer un programme, le mieux est d'utiliser le debugueur.
https://loulou.developpez.com/tutoriels/cpp/debogueur-visual-studio/
--
https://loulou.developpez.com/tutoriels/cpp/debogueur-visual-studio/
--