delphi,函数的调用和传参,求解。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi,函数的调用和传参,求解。相关的知识,希望对你有一定的参考价值。
procedure TForm1.RadioButton1Click(Sender: TObject);
十进制转换成二进制
var
aInt:integer;
begin
aInt:=StrToInt(Edit2.Text);
Edit2.Text:=IntToBin(aInt);
end;
function IntToBin(const aInt : Integer):string;
var
s:string;
i,j:Integer;
begin
s:='';
Result:='';
i:=aInt;
while i>=2 do
begin
s:=s + IntToStr(i mod 2);
i:=i div 2;
end;
s:=s + IntToStr(i);
s:=s+IntToStr(i);
i:=Length(s);
if i < 4 then
s := s + Copy('000 ',1,4-i);
i:=Length(s);
for j:=i downto 1 do
Result := Result + s[j];
end;
我想从Edit1里输入一个数,然后传参给IntToBin,经过计算,然后返回最终值,由Edit2输出,请问上面的代码该怎修改呢?
改成
aInt:=StrToInt(Edit1.Text); 参考技术B 如果你用的是360,那么这段代码会报木马,因为用了shl,可以不用理会
整型本身就是一个4字节的2进制数,所以,直接按2进制来处理,不用这么麻烦
procedure TForm1.Button1Click(Sender: TObject);
var i,n: Integer;
begin
Edit2.Clear;
if not TryStrToInt(Edit1.Text,n) then exit; //赋值给n,如果失败直接退出
for i:=1 to sizeof(n)*8 do
begin
if (n and $80000000)=0 then
Edit2.Text := Edit2.Text + '0'
else
Edit2.Text := Edit2.Text + '1';
n := n shl 1; //左移一位
end;
end;本回答被提问者采纳
app之间的跳转和传参问题
app 之间跳转和传参;
首先 创建2个app formApp (需要跳转到另外app的项目) toApp(被跳转的项目)
一:在toApp 项目中的操作:
1:创建URLSchemes ,
(1).打开info.plist文件,
2. 在appdelegate.m 中
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options { /** 如果使用URL 传参数 */ NSLog(@"----formApp_URL:%@",url); /** 如果使用的是剪切板传参的话, */ UIPasteboard *pasteboard = [UIPasteboard generalPasteboard]; NSString *content = pasteboard.string; NSLog(@"剪切板获取参数:%@",content); /** 其他操作 */ return YES; }
二:在formApp中的操作
1.检测 设备 是否安装了toApp 了,并跳转
/** 跳转操作 */ - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { /** toApp Schemes:// */ NSString *toAppSchemes = @"willToAppURLSchemes://"; /** 检测设备 是否安装toApp */ if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:toAppSchemes]]) { NSLog(@"alearly install"); /** 跳转app */ /** 1:使用URL 传递参数 */ if ([self IOS10]) { [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@?usrid=110",toAppSchemes]] options:@{} completionHandler:^(BOOL success) { /** 成功跳转后的操作 */ }]; }else{ [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@?usrid=110",toAppSchemes]]]; } // /** // 2:使用剪切板传递参数 // */ // [[UIApplication sharedApplication] openURL:[NSURL URLWithString:toAppSchemes]]; // /** // 系统剪切板 (在topApp中 接受到参数后,清空) // */ // UIPasteboard *pasteboard = [UIPasteboard generalPasteboard]; // pasteboard.string = @"user=120&orderid=123456"; }else{ NSLog(@"not install"); } } /** 判断 系统是否 大于10 */ - (BOOL)IOS10 { return ([[[UIDevice currentDevice] systemVersion] floatValue]) >= 10 ? YES : NO; }
2:注意 在检测是否安装时,在xcode7 和iOS9 之后 需要设置白名单,
打开formApp info.plist文件,添加 LSApplicationQueriesSchemes
这样就可以成功检测到 是否安装toApp了,
3. 在传参数的方式 除了 URL,剪切板,还有钥匙串等,想知道更多的方式或详细的,可以搜索--> app之间的通信
以上是关于delphi,函数的调用和传参,求解。的主要内容,如果未能解决你的问题,请参考以下文章