Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
CMake
CMake
Commits
a1de5748
Commit
a1de5748
authored
Mar 11, 2005
by
Sebastien Barre
Browse files
ENH: add last two small funcs from vtkString. Done removing deps
parent
95d6107d
Changes
2
Hide whitespace changes
Inline
Side-by-side
Source/kwsys/SystemTools.cxx
View file @
a1de5748
...
...
@@ -841,6 +841,55 @@ kwsys_stl::string SystemTools::AddSpaceBetweenCapitalizedWords(
return
n
;
}
char
*
SystemTools
::
AppendStrings
(
const
char
*
str1
,
const
char
*
str2
)
{
if
(
!
str1
)
{
return
SystemTools
::
DuplicateString
(
str2
);
}
if
(
!
str2
)
{
return
SystemTools
::
DuplicateString
(
str1
);
}
size_t
len1
=
strlen
(
str1
);
char
*
newstr
=
new
char
[
len1
+
strlen
(
str2
)
+
1
];
if
(
!
newstr
)
{
return
0
;
}
strcpy
(
newstr
,
str1
);
strcat
(
newstr
+
len1
,
str2
);
return
newstr
;
}
char
*
SystemTools
::
AppendStrings
(
const
char
*
str1
,
const
char
*
str2
,
const
char
*
str3
)
{
if
(
!
str1
)
{
return
SystemTools
::
AppendStrings
(
str2
,
str3
);
}
if
(
!
str2
)
{
return
SystemTools
::
AppendStrings
(
str1
,
str3
);
}
if
(
!
str3
)
{
return
SystemTools
::
AppendStrings
(
str1
,
str2
);
}
size_t
len1
=
strlen
(
str1
),
len2
=
strlen
(
str2
);
char
*
newstr
=
new
char
[
len1
+
len2
+
strlen
(
str3
)
+
1
];
if
(
!
newstr
)
{
return
0
;
}
strcpy
(
newstr
,
str1
);
strcat
(
newstr
+
len1
,
str2
);
strcat
(
newstr
+
len1
+
len2
,
str3
);
return
newstr
;
}
// Return a lower case string
kwsys_stl
::
string
SystemTools
::
LowerCase
(
const
kwsys_stl
::
string
&
s
)
{
...
...
Source/kwsys/SystemTools.hxx.in
View file @
a1de5748
...
...
@@ -177,6 +177,17 @@ public:
static kwsys_stl::string AddSpaceBetweenCapitalizedWords(
const kwsys_stl::string&);
/**
* Append two or more strings and produce new one.
* Programmer must 'delete []' the resulting string, which was allocated
* with 'new'.
* Return 0 if inputs are empty or there was an error
*/
static char* AppendStrings(
const char* str1, const char* str2);
static char* AppendStrings(
const char* str1, const char* str2, const char* str3);
/** -----------------------------------------------------------------
* Filename Manipulation Routines
* -----------------------------------------------------------------
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment