Библиотека String
1.0
Own String library. Лабораторная работа ФБИТ ИТМО
|
См. документацию.
18 std::cout <<
"BinStr::BinStr(int val) : Stroka(val), val=" << val << std::endl;
23 if (!((
pCh[0] >=
'0' &&
pCh[0] <=
'9'))) {
24 std::cout <<
"Bad symbol, pCh[0]=" <<
pCh[0] << std::endl;
32 for (
int i = 1; i <
len; i++) {
33 if(!(
pCh[i] >=
'0'&&
pCh[i] <=
'9')) {
34 std::cout <<
"Bad string, pCh[" << i <<
"]=" <<
pCh[i] << std::endl;
42 std::cout <<
"BinStr::BinStr( char* Str):String(Str)" << std::endl;
48 std::cout <<
"BinStr::BinStr(const BinStr& from) : String(from)" << std::endl;
53 std::cout <<
"BinStr::~BinStr()" << std::endl;
59 return SIGN::NEGATIVE;
61 return SIGN::POSITIVE;
66 return getSign() == SIGN::POSITIVE;
71 return getSign() == SIGN::NEGATIVE;
77 for (
int i = 0; i <
len; i++) {
88 for (
int i = 0; i <
len; i++) {
93 for (
int i = 0; i <
len; i++) {
110 std::cout <<
"BinStr& BinStr::operator=(const BinStr& Ds)" << std::endl;
115 if (pobj1.
len >= pobj2.
len) {
117 int i = pobj1.
len - 1;
118 int j = pobj2.
len - 1;
119 for (; j>=0; i--, j--) {
120 tmp.
pCh[i] = (pobj1.
pCh[i] == pobj2.
pCh[j]) ?
'0' :
'1';
123 tmp.
pCh[i] = pobj1.
pCh[i];
128 int i = pobj2.
len - 1;
129 int j = pobj1.
len - 1;
130 for (; j>=0; i--, j--) {
131 tmp.
pCh[i] = (pobj2.
pCh[i] == pobj1.
pCh[j]) ?
'0' :
'1';
134 tmp.
pCh[i] = pobj2.
pCh[i];
143 for (; pobj1i != 0; pobj1i >>= 1, pobj1len++);
145 if (pobj1len >= pobj2.
len) {
147 int i = pobj1len - 1;
148 int j = pobj2.
len - 1;
149 for (; j>=0; i--, j--) {
150 tmp.
pCh[i] = ((pobj1 % 2) == (pobj2.
pCh[j]-
'0')) ?
'0' :
'1';
154 tmp.
pCh[i] = (pobj1 % 2 == 0) ?
'0' :
'1';
160 int i = pobj2.
len - 1;
161 int j = pobj1len - 1;
162 for (; j>=0; i--, j--) {
163 tmp.
pCh[i] = ((pobj2.
pCh[i]-
'0') == (pobj1 % 2)) ?
'0' :
'1';
167 tmp.
pCh[i] = pobj2.
pCh[i];
182 return pobj1.
getNum() == pobj2;
186 return pobj1 == pobj2.
getNum();
Заголовочный файл с описанием класса "Битовая строка".
Заголовочный файл с описанием класса "Строка".
int getUnsignedNum() const
BinStr & operator=(const BinStr &)
char * pCh
Адрес динамически выделенной памяти для размещения символов строки
int operator==(const BinStr &pobj1, const BinStr &pobj2)
Производный от "Строка" класс "Битовая строка".
BinStr operator^(const BinStr &pobj1, const BinStr &pobj2)