pad_front.cpp 523 B

1234567891011121314151617181920212223242526
  1. //
  2. // $Id$
  3. //
  4. #include<__vic/string_utils.h>
  5. #include<cstring>
  6. namespace __vic {
  7. //----------------------------------------------------------------------------
  8. char *pad_front(char *st, size_t size, char pad_ch)
  9. {
  10. if(!st) return st;
  11. size_t sz = std::strlen(st);
  12. if(sz < size)
  13. {
  14. size_t n = size - sz;
  15. std::memmove(st + n, st, sz + 1);
  16. std::memset(st, pad_ch, n);
  17. }
  18. return st;
  19. }
  20. //----------------------------------------------------------------------------
  21. } // namespace