(l/r)trim | C++ Coding

Andreas Hamm
staatlich geprüfter technischer Assistent für Informatik
Startseite Ι C++ Coding

trim

Entfernt Leerraum (z.B.: Leerzeichen) links und rechts von Text.


C++
template<class _Elem, class _Traits, class _Ax>
void trim(typename std::basic_string<_Elem, _Traits, _Ax>& _Str);



#if defined(_UDOPT_INVK_C_IMPL)
void trim(char* _Str);
void trim(wchar_t* _Str);

#else
template<class _Elem>
void trim(_Elem* _Str);


#endif

C
void _cstrim(char* _Str);
void _wcstrim(wchar_t* _Str);

Parameter

_Str

Zeichenkette deren Leerraum vor dem Beginn und nach dem Ende des Textes entfernt werden soll. Kann Null sein.


Rückgabe

Die Funktion entfernt den Leerraum vor dem Beginn und nach Ende des Textes aus der übergebenen Zeichenkette; manipuliert den Wert der übergebenen Zeichenkette.


Siehe auch

ltrim, rtrim

C++ Quellcode

trimstr.hpp
Quellcode Auszug…
#pragma once

#include <string>

// Forward declarations ...
template<class _Elem, class _Traits, class _Ax>
void ltrim(typename std::basic_string<_Elem, _Traits, _Ax>& _Str);

template<class _Elem, class _Traits, class _Ax>
void rtrim(typename std::basic_string<_Elem, _Traits, _Ax>& _Str);


template<class _Elem, class _Traits, class _Ax>
_inline
void trim(typename std::basic_string<_Elem, _Traits, _Ax>& _Str);

{
rtrim<_Elem, _Traits, _Ax>(_Str);
ltrim<_Elem, _Traits, _Ax>(_Str);
}


#if defined(_UDOPT_INVK_C_IMPL)
#include "xstrim.inl"

__inline void trim(char* _Str)
{
::_cstrim(_Str);
}


__inline void trim(wchar_t* _Str)
{
::_wcstrim(_Str);
}

#else
// Extra forward declarations ...
template<class _Elem> void ltrim(_Elem* _Str);
template<class _Elem> void rtrim(_Elem* _Str);


// Following code lines are only intend for performance
//comparison ...

template<class _Elem>
_inline
void trim(_Elem* _Str)
{
rtrim<_Elem>(_Str);
ltrim<_Elem>(_Str);
}

#endif

xstrim.inl
#pragma once

#if defined(__cplusplus)
extern "C"
{
#endif


#include "xstrim.h"

#if defined(__cplusplus)
}
#endif


C Quellcode

xstrim.h
#pragma once

#include <ctype.h>
#include <wchar.h>


extern void _csltrim(char* _Str);
extern void _wcsltrim(wchar_t* _Str);
extern void _csrtrim(char* _Str);
extern void _wcsrtrim(wchar_t* _Str);
extern void _cstrim(char* _Str);
extern void _wcstrim(wchar_t* _Str);

xstrim.c
Quellcode Auszug…
#include "pch.h"

#include <memory.h>
#include <ctype.h>
#include <wchar.h>


void _cstrim(char* _Str)
{
_csrtrim(_Str);
_csltrim(_Str);
}


void _wcstrim(wchar_t* _Str)
{
_wcsrtrim(_Str);
_wcsltrim(_Str);
}
Seitenanfang
Impressum Ι Rechtliche Hinweise Ι Haftungsausschluss Ι Nutzungsbedingungen