Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
26
Добавлен:
17.04.2013
Размер:
981 б
Скачать
#include"str.h"
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

const m=15;

string::string(int n, char a, char b)
{
	len=n;
	str=new char[len];
	for (int i=0;i<=len-1;i++)
		str[i]=random(b-a+1)+a;
	str[len]=0;
}

string::string(char *v, int n)
{
	len=n;
	str=new char[len];
	strcpy(str,v);
}

string::~string()
{
	delete str;
	len=0;
}

void string::print()
{
	printf("%s",str);
}

void string::change(int a, int b)
{
	str[a]+=str[b];
	str[b]=str[a]-str[b];
	str[a]-=str[b];
}

void string::operator >>(int p)
{
	for (int i=0;i<=len/2-1;i++)
		change(i,len-i-1);
}

char* string::operator ++()
{
	char *word;
	int	p=-1, p1=0, p2=len-1, r=len;

	for (int i=1;i<=len-1;i++)
	{
		if (str[i]==' ')
		{
			if (str[i-1]!=' ')
				if (r>i-p-1)
				{
					p1=p+1;
					p2=i-1;
					r=p2-p1+1;
				}
			p=i;
		}
	}

	word=new char[r];
	for (i=p1;i<=p2;i++)
		word[i-p1]=str[i];
	word[r]=0;

	return word;
}
Соседние файлы в папке Var01