Website Summary Files Commits Branches @commit @diff @stats
path: root / Sem. 07 / MyString / MyString.cpp
diff options
context:
space:
mode:
1 files changed, 13 insertions, 4 deletions
-rw-r--r--Sem. 07/MyString/MyString.cpp17
diff --git a/Sem. 07/MyString/MyString.cpp b/Sem. 07/MyString/MyString.cpp
index 909a378..8c2a79f 100644
--- a/Sem. 07/MyString/MyString.cpp
+++ b/Sem. 07/MyString/MyString.cpp
@@ -21,9 +21,18 @@ MyString::MyString()
MyString::MyString(const char* data)
{
- size = strlen(data);
- str = new char[size + 1];
- strcpy(str, data);
+ if(data == nullptr)
+ {
+ str = new char[1];
+ str[0] = '\0';
+ size = 0;
+ }
+ else
+ {
+ size = strlen(data);
+ str = new char[size + 1];
+ strcpy(str, data);
+ }
}
MyString::MyString(const MyString& other)
@@ -63,4 +72,4 @@ void MyString::concat(const MyString& other)
const char* MyString::c_str() const
{
return str;
-} \ No newline at end of file
+}