⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 decipher.h

📁 这是一个通过字符串操作来实现文本加密解密的源程序,通过打乱原文本字符串的顺序,隐藏信息,通过解密,可以回复原字符正常顺序,达到加密解密的目的.压缩包包括源程序文件,再vc中运行.
💻 H
字号:
#include<iostream.h>
#include<stdio.h>
#include<string.h>
const size=1000;
class stack//栈类
{
public: 
   stack(int); //构造栈 
   ~stack();//析构
   void push(char s); //压栈,压之前须判是否已满
   void push_string(char *s);//把一个字符串压进栈里
   char pop();//弹栈, 弹之前判断是否已空
   char getTop();//取栈顶元素
   void makeEmpty (); // 清空
   int isEmpty() ;  // 栈空为1,否则为 0
   int isFull() ;// 栈满为 1,否则为 0
private:
   int top; //栈顶
   int maxsize;//栈最大容量
   char *st;
  
};
stack::stack(int s)//构造函数定义
{
  maxsize=s;
  st=new char[s];
  top=-1;
}
void stack::push(char s)//压栈函数定义
{
	if(!isFull())
	{
      top++;
	  st[top]=s;
	}
}
void stack::push_string(char *s)//把字符串压栈
{
	int len=strlen(s);
	for(int i=0;i<len;i++)
	{
       if(!isFull())
		  push(s[i]);
	}
}
char stack::pop()//弹栈函数定义
{
	if(!isEmpty())
		return st[top--];
}
int stack::isEmpty()//判断是否空
{
	return top==-1;
}
int stack::isFull()//判断是否满
{
	return top==maxsize-1;
}
char stack::getTop()//取栈顶元素
{
	if(!isEmpty())
	     return st[top];
}
void stack::makeEmpty()//清空栈
{
	for(int i=0;i<maxsize;i++)
		st[i]='\0';
}
stack::~stack()
{
	delete []st;
}
char* reverse(char a[])//把字符串逆转
{
	int len=strlen(a);
	char *b=new char[len+1];
	for(int j=0;j<len;j++)
	{
      b[j]=a[len-1-j];
	}
	b[len]='\0';
	return b;
}
void make_string_empty(char *a)//把字符数组清空
{
    int len=strlen(a);
	for(int j=0;j<len;j++)
		a[j]='\0';
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -