2023-12-19 12:39来源:m.sf1369.com作者:宇宇
判断里面写相应的sql语句
如:
sql = select * from keywords where id>0
if leval=0 then
sql = and leval=0
end if
if lang=en then
sql = and lang='en'
end if
主要跟你系统的结构
一般很难看出来,像C++ delphi这些都会直接编译成机器码,出来都是二进制的东西,很难还原
.net这类的语言也一样,C#和VB.NET编译出来的都是MSIL,可以转换到任意一种语言
这涉及到方面的知识,脱壳,文件检测!当然如果软件有一些附带的文件,对于熟悉语言的人就可以根据经验就可以判断了!不需要工具。
不知道你写的这段脚本是用于机器人还是用于游戏的AI编程,看你脚本的意思,应该rotate_angle其实是之前运算出来的下一帧要执行的动作状态。而distance<1这个判断在逻辑上属于状态的运算,而Rotate()应该属于状态的执行,关键在于你Rotate()内部是已经执行动作了还是只是一个状态的运算判断,还有就是rotate_angle这个状态值是在哪里进行的修改。我觉得状态的运算和状态的执行最好分开来比较清楚。先算好当前的状态会引发的下一个状态是什么,然后再执行,根据执行的结果作为下一帧的输入。
“构造栈;构造队列; 使用栈
和队列进行判断”这个我也不是太懂。
我在网上看到过回文,使用了好多复杂的函数,我都还没学过。
不过我自己写了一个,你看看,原理很简单。
用了.substr函数 for循环 getlin(提取一句话,遇回车终止)
是在C++里写的,不知道在C里能不能用。
<这里在C++的getline(cin,stringname函数有个bug(第一次从键盘getlin输入两个回车才能getlin,但是第二个回车会保存到下一次的getlin)所以循环getline时会出错> 我把循环去掉了。
//*************************************************************
//Palindrome Judgment program 回文判断程序 U6ex4 page235
//cin a sentence,cout its characters in reverse order
//and judgment whether the input line is a palindrome
//*************************************************************
#include<iostream>
#include<string>
using namespace std;
string sen;
string pal;//palindrome回文
int len,i,j;//len=length字符串的长度,i是for循环变量,j判断倒序与正序相同字符的个数
//如果它等于字符串总的长度,即为回文。
void main()
{
cout<<please input a sentence\n;
getline(cin,sen);
cout<<the reverse order is:\n;
len=sen.length();
j=0; //倒序与正序相同字符的个数,赋初值0
for(i=0;i<len;i++)
{
pal=sen.substr(len-i-1,1);
cout<<pal;
if(pal==sen.substr(i,1))
j++;
}
if(j==len)
cout<<endl<<this sentence IS a palindrome\n;
else
cout<<endl<<this sentence is NOT a palindrome\n;
}