SO库通过IDA反汇编,求大神解释

SO库通过IDA反汇编如下代码,求大神告知这是何等算法,只是单纯的des加密么

 int __fastcall Java_com_yukang_yyjk_util_DesUtil_makeskey(_DWORD *a1)
{
  int v1; // r2@1
  _DWORD *v2; // r4@1
  char *s; // ST08_4@1
  char *v4; // ST10_4@1
  char *v5; // ST14_4@1
  size_t v6; // r7@1
  size_t n; // ST0C_4@1
  size_t v8; // ST18_4@1
  void *v9; // r5@1
  char *v10; // r3@1
  int v11; // r6@3
  int result; // r0@3
  int v13; // [sp+30h] [bp-38h]@1
  int v14; // [sp+34h] [bp-34h]@1
  int v15; // [sp+38h] [bp-30h]@1
  char v16; // [sp+3Ch] [bp-2Ch]@1
  int v17; // [sp+4Ch] [bp-1Ch]@1

  v1 = *a1;
  v17 = _stack_chk_guard;
  v2 = a1;
  s = (char *)(*(int (**)(void))(v1 + 676))();
  v4 = (char *)(*(int (__fastcall **)(_DWORD *))(*v2 + 676))(v2);
  v5 = (char *)(*(int (__fastcall **)(_DWORD *))(*v2 + 676))(v2);
  v14 = 1580348513;
  v13 = 1715758187;
  v15 = 4203302;
  v6 = j_j_strlen(s);
  n = j_j_strlen(v4);
  v8 = j_j_strlen(v5);
  j_j_memset(&v16, 0, 0x10u);
  v9 = j_j_malloc(v6 + n + v8 + 24);
  j_j_memcpy(v9, s, v6);
  j_j_memcpy((char *)v9 + v6, v4, n);
  j_j_memcpy((char *)v9 + v6 + n, v5, v8);
  j_j_memcpy((char *)v9 + v6 + n + v8, "98765432abcdefgh11223344", 0x18u);
  v10 = (char *)v9;
  do
  {
    *v10 ^= v10[8] ^ v10[16];
    ++v10;
  }
  while ( v10 != (char *)v9 + 8 );
  desenc_ecb(v9, 8, &v13, &v16);
  (*(void (__fastcall **)(_DWORD *))(*v2 + 680))(v2);
  (*(void (__fastcall **)(_DWORD *))(*v2 + 680))(v2);
  (*(void (__fastcall **)(_DWORD))(*v2 + 680))(v2);
  v11 = (*(int (__fastcall **)(_DWORD *, signed int))(*v2 + 704))(v2, 8);
  (*(void (__fastcall **)(_DWORD *, int, _DWORD, signed int))(*v2 + 832))(v2, v11, 0, 8);
  j_j_free(v9);
  result = v11;
  if ( v17 != _stack_chk_guard )
    j_j___stack_chk_fail(v11);
  return result;
}

1个回答

bengxu8952
bengxu8952 反编译结果一样
接近 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
IDA反汇编后,函数调用的参数是怎么确定的?
菜鸟刚接触逆向好多不懂,求解![图片说明](https://img-ask.csdn.net/upload/201811/17/1542444203_306957.png) 这里的encrypt函数的参数是什么呢。 函数的内容![![图片说明](https://img-ask.csdn.net/upload/201811/17/1542444254_942123.png)图片说明](https://img-ask.csdn.net/upload/201811/17/1542444249_822089.png) 函数的伪代码![图片说明](https://img-ask.csdn.net/upload/201811/17/1542444269_356181.png) 我该怎么确定函数的参数是什么,无从下手啊
ida动态调试so,附加成功后找不到目标so
本人接触反编时间也有半年了,一直不太会ida动态调试so,从网上看好多帖子也没成功,这次自己写了个demo app 调试到这里就找不到我写的so了,不知道哪里出错了,求指点 这是我写的so内容 下面是我的操作步骤 1.ida静态打开so    ok的, 2.root真机 小米5 一台   进入root手机里启动 android_serverr 3.adb forward tcp:23946 tcp:23946 4.mprop修改手机debugger属性 5.adb shell am start  -D -n com.wzs.jnidemo/.MainActivity 启动app 6. 通过monitor 查看端口 jdb connect com.sun.jdi.SocketAttach:hostname=127.0.0.1,port=8625 连接jdb 7.ida 通过debugger连接远端 进程选择然后就附加上了,程序停在libc.so处,,按f9 开始之,,,,,,然后也搜不到我得so 然后我看下面的加载日志,也没有加载我的libnative-lib.so 然后手机还停留在waiting for debugger 等待调试界面.. 试过好几次,都是这种情况,求明白的人指点下哪里错了 下面附上含有图片的地址 https://mp.csdn.net/postedit/100583927
Linux安装IDA Por。。。。。
我在Kail-Linux上不会安装。IDA Por求大神支招 版本为6.1。。。。
IDA动态调试.text .data段等无法进去 ——Command "JumpSegment" failed
**先赋值权限** ``` C:\Users>adb shell 2|root@generic:/ # cd /data/local/tmp root@generic:/data/local/tmp # ls as user user1 root@generic:/data/local/tmp # chmod 777 user root@generic:/data/local/tmp # chmod 777 user1 root@generic:/data/local/tmp # chmod 777 as root@generic:/data/local/tmp # ./as IDA Android 32-bit remote debug server(ST) v1.22. Hex-Rays (c) 2004-2017 Listening on 0.0.0.0:23946... ========================================================= [1] Accepting connection from 127.0.0.1... ``` -------------------------------------- **转发端口:** ``` C:\Users>adb forward tcp:23946 tcp:23946 ``` -------------------------------------- ## **_打开IDA加载进程后不是直接进入.text而是进入.linker_** ``` linker:B6F26A40 _start linker:B6F26A40 MOV R0, SP linker:B6F26A44 MOV R1, #0 linker:B6F26A48 BLX unk_B6F28BC0 linker:B6F26A4C MOV PC, R0 linker:B6F26A4C ; ------------------------------------------------------ ``` -------------------------------------- ## 然后通过 Ctrl+s 查看所有的段,找到.text段双击会显示“_Command "JumpSegment" failed_”,后来发现其他很多的段双击都是这样 **环境:** IDA6.8/7.0(试了两个版本) ndk17-20(试了4个版本) Android模拟器 (试了很多个不同的版本。。) ---------------------------------------------- JNI里边就一个.c文件和Android.mk、Application.mk **关键代码**: Android.mk ``` LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_ARM_MODE := arm LOCAL_MODULE := user LOCAL_SRC_FILES := userinfo.c include $(BUILD_EXECUTABLE) ``` Application.mk ``` APP_ABI := x86 armeabi-v7a ``` 大概就是这样了。。。 有没有大神帮帮忙,困惑两天了。。谢谢!!! **下边附图** ![图片说明](https://img-ask.csdn.net/upload/201910/24/1571923580_55812.png) ++++++++++++++++++++++++++++++++ ![图片说明](https://img-ask.csdn.net/upload/201910/24/1571923601_431091.png) ++++++++++++++++++++++++++++++++ ![图片说明](https://img-ask.csdn.net/upload/201910/24/1571923611_182225.png) ++++++++++++++++++++++++++++++++ ![图片说明](https://img-ask.csdn.net/upload/201910/24/1571923739_186171.png)![图片说明](https://img-ask.csdn.net/upload/201910/24/1571923747_891882.png) 试了很多方法了。。 不同版本的ndk编译后的user有时候还会出现“error: only position independent executables (PIE) are supported.” 这个搜到的说是AndroidServer第17个字节02修改为03、安卓换成5.0以下版本就行了(但我发现字节本来就是03,而且也根本不行。。) 求。。大神指点一下。。谢谢! --------------------- 已解决。。 最后还是ndk版本问题 换为ndk-10就行了!!!
java对Excle进行操作。A表有id,name,B表有id,age。A表里的id比B表的多,但是B表的idA表都有,想把A表的id与B表的id比对,一样的将A表的name写入到B表对应的id行
java对Excle进行操作。A表有id,name,B表有id,age。A表里的id比B表的多,但是B表的idA表都有,想把A表的id与B表的id比对,一样的将A表的name写入到B表对应的id行
IDA的插件怎么安装?下了个IDA的NES逆向插件,但是不知道怎么安装使用
下了个IDA的NES逆向插件,但是不知道怎么安装使用,求教 ![图片说明](https://img-ask.csdn.net/upload/201512/05/1449318463_522932.png) 压缩包的目录结构长这样!
sql语句的最简最佳优化?
请教大佬,下条语句的最简最佳优化: ``` select max(t.ida2a2)ida2a2 from table1 t,table2 A where t.ida3=A.Ida2a2 and A.WTPARTNUMBER='WCDS000001' and t.version=( select VERSIONID from ( select rownum r, VERSIONID from ( select distinct t1.VERSIONID from table2 a1,table1 t1 where a1.number='WCDS000001' and t1.ida3=a1.ida2a2 order by t1.Versionid desc) where rownum < 3) e where e.r>1 )and t.IDA3VIEW=(select v.IDA2A2 from table3 v where v.name='Design') ```
ida怎么用f5功能,怎么安装sdk?
ida 6.8怎么用f5,下载了安装包并安装,idasdk68.zip、flair68.zip、tilib68.zip。等文件不知道怎么用
使用IDA的debug,想像WINDBG那样把源码加载进来,结果老是failed,求帮忙看看
在debugger下面选open a source file,总是跳这个 ![图片说明](https://img-ask.csdn.net/upload/201707/09/1499561910_880794.png) IDA是6.8的,IDE用的VS2013,折腾了N久还是这样,晕。。。 真的很想知道,到底是啥原因,老是说找不到调试信息,这是缺啥啊,还是格式不对。。。 试调了一大波感觉上相关的东西,还是搞不定。
.net Signalr实时通信求个大神指点。
chatbox.chat.server.send(this.options.id, this.$input.val()); //这句话都不执行 下面这个我也配置了 using Microsoft.AspNet.SignalR; using Owin; using Microsoft.Owin; [assembly: OwinStartup(typeof(CarRental.Web.App_Start.Startup))] namespace CarRental.Web.App_Start { public class Startup { public void Configuration(IAppBuilder app) { HubConfiguration configuration = new HubConfiguration { EnableJSONP = true }; app.MapSignalR(configuration); } } } 就是不会运行到后面来 public void Send(string id, string message) { if (!Context.User.Identity.IsAuthenticated) { return; } Principal principal = (Principal)Context.User; string name = principal.DisplayName; string dateTime = DateTime.Now.ToString("HH:mm"); int idA = principal.ID; int idB = int.Parse(id); //向自己发送 Clients.Caller.addMessageA(message, dateTime, idB, name); //检查对方是否在线 if (!_onlines.ContainsKey(idB) || _onlines[idB] <= 0) { Clients.Caller.addMessageSys("对方是离线状态", dateTime, idB); } //向对方发送 Clients.Group(idB.ToString()).addMessageB(message, dateTime, idA, name); ChatSvc.AddMessage(idA, idB, message); } 请问一下这怎么解决,看了很多教程都做不出来。
IDA* 算法的原理和步骤
我想了解下IDA*算法的相关原理,我只需要知道它的运行原理和步骤,按顺序怎么执行下去的,麻烦大牛们给个解答,不需要代码,我弄懂了自然会写,谢谢
使用ida逆向分析法分析APP中用户ID
还有另外一个App:118eb1af8dd78f32.ipa,分析这个App中存在的一个重要信息——一个用户ID,要求使用ida逆向分析法 地址:http://range.jsxajs.cn:8080/mobileApp/2/118eb1af8dd78f32.ipa PS:下载地址绝对安全,不涉及安全问题,法律问题。
windchill中如何运行带有SQL函数的语句(如select sum(ida2a2) from wtpart)?
这是我的代码 QuerySpec qs = new QuerySpec(); qs.setAdvancedQueryEnabled(true); int a = qs.appendFrom(new ExternalTableExpression("WTPART")); String[] aliase = new String[1]; aliase[0] = qs.getFromClause().getAliasAt(a); TableColumn tc = new TableColumn(aliase[0],"IDA2A2"); SQLFunction sqlf = SQLFunction.newSQLFunction(SQLFunction.SUM); sqlf.setArgumentAt(tc, 0); sqlf.getArgumentAt(0); qs.appendSelect(sqlf, false); QueryResult qr = PersistenceHelper.manager.find(qs); 这样运行报下面的错误 Exception in thread "main" (wt.pds.pdsResource/36) wt.pom.PersistenceException: 带有合计函数的语句不能用于访问控制。 at wt.method.RemoteMethodServer.invoke(RemoteMethodServer.java:791) at wt.services.ServiceFactory$ClientInvocationHandler.invoke(ServiceFactory.java:349) at com.sun.proxy.$Proxy0.find(Unknown Source) at ext.jwis.util.WTPartUtil.test(WTPartUtil.java:724) at ext.jwis.util.WTPartUtil.main(WTPartUtil.java:136) 有哪个大神帮忙解决一下
oracle 实现多表关联SQL脚本
A表: XH IDA NAME AGE 1 1 张三 20 2 2 李四 18 3 3 王五 19 4 4 lily 19 B表 XH IDB IDA 1 1 1 2 2 1 3 3 1 4 4 3 5 5 3 6 6 4 7 7 4 C表 XH IDC IDB 1 1 1 2 1 2 3 1 3 4 2 6 5 2 7 A表的IDA与B表的IDA有关系,B表的IDB与C表的IDB有关系 实现效果: XH IDA NAME AGE IDB IDC 1 1 张三 20 1,2,3 1 2 2 李四 18 3 3 王五 19 4,5 4 4 lily 19 6,7 2
已知文档中里面的任意两个字符串中间用冒号连接,如何用C语言替换成用等号连接
processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 37 model name : Intel(R) Core(TM) i5 CPU U 470 @ 1.33GHz stepping : 5 microcode : 0x2 cpu MHz : 665.000 cache size : 3072 KB physical id : 0 siblings : 4 core id : 0 cpu cores : 2 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 11 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt lahf_lm tpr_shadow vnmi flexpriority ept vpid dtherm ida arat bugs : bogomips : 2660.09 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: processor : 1 vendor_id : GenuineIntel cpu family : 6 model : 37 model name : Intel(R) Core(TM) i5 CPU U 470 @ 1.33GHz stepping : 5 microcode : 0x2 cpu MHz : 798.000 cache size : 3072 KB physical id : 0 siblings : 4 core id : 2 cpu cores : 2 apicid : 4 initial apicid : 4 fpu : yes fpu_exception : yes cpuid level : 11 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt lahf_lm tpr_shadow vnmi flexpriority ept vpid dtherm ida arat bugs : bogomips : 2660.09 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: processor : 2 vendor_id : GenuineIntel cpu family : 6 model : 37 model name : Intel(R) Core(TM) i5 CPU U 470 @ 1.33GHz stepping : 5 microcode : 0x2 cpu MHz : 665.000 cache size : 3072 KB physical id : 0 siblings : 4 core id : 0 cpu cores : 2 apicid : 1 initial apicid : 1 fpu : yes fpu_exception : yes cpuid level : 11 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt lahf_lm tpr_shadow vnmi flexpriority ept vpid dtherm ida arat bugs : bogomips : 2660.09 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: processor : 3 vendor_id : GenuineIntel cpu family : 6 model : 37 model name : Intel(R) Core(TM) i5 CPU U 470 @ 1.33GHz stepping : 5 microcode : 0x2 cpu MHz : 665.000 cache size : 3072 KB physical id : 0 siblings : 4 core id : 2 cpu cores : 2 apicid : 5 initial apicid : 5 fpu : yes fpu_exception : yes cpuid level : 11 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt lahf_lm tpr_shadow vnmi flexpriority ept vpid dtherm ida arat bugs : bogomips : 2660.09 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: 创建一个子进程,在子进程里面创建一个上面的文档(我是把上面的内容直接复制创建文档的也可以),如何将vendor_id : GenuineIntel中的冒好改成:=
oracle主表2个字段动态关联从表问题
# 动态使用主表中2个字段关联从表达 objid 表A(主) ida,idb,type 表B(从) id,email 实际场景入下: 现在表A有2个字段ida,idb,他们分别关联表B的id,相当于一个发信。 如果type = 1,那么就使用ida关联表B查询到B的信息发送给B, 如果type = 2,那么就使用idb关联表B查询到B的信息发送给B。 ## 本人谢了一段理想化的sql如下: **select decode(type,'1',a.ida,'2',a.idb,'默认') xxid ,a.*,b.* from a left join b on a.xxid=b.objid** 想法是根据type动态生成一个id去关联从表的id,但是执行失败。 有没有小伙伴能解决这个问题? 查询结果需要2个表的所有字段 select decode(type,'1',a.ida,'2',a.idb,'默认') xxid ,a.*,b.* from a left join b on a.xxid=b.objid and a.type = 1 left join b on a.xxid=b.objid and a.type = 2 这种sql就不用写了,感觉太冗余。
Qracle数据库递归查询排序问题
![图片说明](https://img-ask.csdn.net/upload/201707/21/1500605906_184115.jpg) SELECT SUBSTR(SYS_CONNECT_BY_PATH( NAME,'||'), 3) NAME_PATH FROM mplm.classificationnode cd1 --where CONNECT_BY_ISLEAF = '1' START WITH cd1.ida2a2 ='88398' --孙子节点 CONNECT BY PRIOR cd1.ida3b6 = cd1.ida2a2
调用java进程时为什么找不到java类
您好,请问我在调用java进程时为什么找不到java类? 我用的是myeclipse,执行命令 Process p = run.exec("java cn.com.jit.ida.demo.ratk.InvokeProcess"); 时,发现没有调用InvokeProcess.java类
为了一个项目,我去学pike语言,值吗?
公司有意让我去接手一个项目, <br />那个项目是由pike语言开发的。 <br />你说我值得吗?去学一门语言。 <br />我原先学的java,还没有很熟练, <br />属于初使程序员行列,对java方面的一些特性还是很喜欢的。 <br />请告诉我怎么办?有人经常这样说,编程思想比编程语言要强。 <br />可是我怕捡到籽麻,反而丢了西瓜。 <br />我也在两难之间啊?公司要我去学!我不情愿。<br/><strong>问题补充</strong><br/><div class="quote_title">halida 写道</div><div class="quote_div">http://pike.ida.liu.se/docs/tutorial/ <br /> <br />估计一晚上就学会了。</div>谢谢你这么多的回复。我总觉得一个人要学语言的顺序是,先把你一门语言学的融会贯通了。再说其它的语言,否则会出现,捡到芝麻,丢了西瓜的情况。那就惨了。<br/><strong>问题补充</strong><br/><div class="quote_title">iaimstar 写道</div><div class="quote_div">再说,程序员多掌握几门语言有助与更好的理解语言本身,反射,内省,闭包这些东西,哪门语言都比java好理解</div> <br />我也只知道一个什么叫反射,内省,闭包,都没听过。<br/><strong>问题补充</strong><br/><div class="quote_title">jasongreen 写道</div><div class="quote_div">这么年轻学点东西都还会觉得是浪费时间? <br />学一门语言,要那么久吗?</div> <br />就是从心里不情愿。假如java是英语的话,pike是西班牙语的话,学java可以用途很广,学pike就少了。<br/><strong>问题补充</strong><br/><div class="quote_title">iaimstar 写道</div><div class="quote_div"><div class="quote_title">xiaoyin445792557 写道</div><div class="quote_div"><div class="quote_title">iaimstar 写道</div><div class="quote_div">再说,程序员多掌握几门语言有助与更好的理解语言本身,反射,内省,闭包这些东西,哪门语言都比java好理解</div> <br />我也只知道一个什么叫反射,内省,闭包,都没听过。</div> <br /> -- 近日被多人调侃。。。</div>呵呵。我还再查查。真不是开玩笑的。 <br />
130 个相见恨晚的超实用网站,一次性分享出来
文末没有公众号,只求 点赞 + 关注 搞学习 知乎:www.zhihu.com 大学资源网:http://www.dxzy163.com/ 简答题:http://www.jiandati.com/ 网易公开课:https://open.163.com/ted/ 网易云课堂:https://study.163.com/ 中国大学MOOC:www.icourse163.org 网易云课堂:stu
终于明白阿里百度这样的大公司,为什么面试经常拿ThreadLocal考验求职者了
点击上面↑「爱开发」关注我们每晚10点,捕获技术思考和创业资源洞察什么是ThreadLocalThreadLocal是一个本地线程副本变量工具类,各个线程都拥有一份线程私有的数
win10系统安装教程(U盘PE+UEFI安装)
一、准备工作 u盘,电脑一台,win10原版镜像(msdn官网) 二、下载wepe工具箱  极力推荐微pe(微pe官方下载) 下载64位的win10 pe,使用工具箱制作启动U盘打开软件,   选择安装到U盘(按照操作无需更改) 三、重启进入pe系统   1、关机后,将U盘插入电脑 2、按下电源后,按住F12进入启动项选择(技嘉主板是F12)     选择需要启
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、PDF搜索网站推荐 对于大部
C语言魔塔游戏
很早就很想写这个,今天终于写完了。 游戏截图: 编译环境: VS2017 游戏需要一些图片,如果有想要的或者对游戏有什么看法的可以加我的QQ 2985486630 讨论,如果暂时没有回应,可以在博客下方留言,到时候我会看到。 下面我来介绍一下游戏的主要功能和实现方式 首先是玩家的定义,使用结构体,这个名字是可以自己改变的 struct gamerole { char n
java源码分析 Arrays.asList()与Collections.unmodifiableList()
举个栗子 本章示例代码来自java编程思想——17.4.1未获支持的操作——Unsupported类。 import java.util.*; public class Unsupported { static void test(String msg, List&lt;String&gt; list) { System.out.println("--- " + msg
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple/ 
Java学习笔记(七十二)—— Cookie
概述 会话技术: 会话:一次会话中包含多次请求和响应 一次会话:浏览器第一次给服务器发送资源请求,会话建立,直到有一方断开为止 功能:在一次会话的范围内的多次请求间,共享数据 方式: 客户端会话技术:Cookie,把数据存储到客户端 服务器端会话技术:Session,把数据存储到服务器端 Cookie 概念:客户端会话技术,将数据存储到客户端 快速入门: 使用步骤: 创建C
程序员写了一个新手都写不出的低级bug,被骂惨了。
你知道的越多,你不知道的越多 点赞再看,养成习惯 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试点思维导图,也整理了很多我的文档,欢迎Star和完善,大家面试可以参照考点复习,希望我们一起有点东西。 前前言 为啥今天有个前前言呢? 因为你们的丙丙啊,昨天有牌面了哟,直接被微信官方推荐,知乎推荐,也就仅仅是还行吧(心里乐开花)
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆  每天早上8:30推送 作者| Mr.K   编辑| Emma 来源| 技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯
程序员该看的几部电影
##1、骇客帝国(1999) 概念:在线/离线,递归,循环,矩阵等 剧情简介: 不久的将来,网络黑客尼奥对这个看似正常的现实世界产生了怀疑。 他结识了黑客崔妮蒂,并见到了黑客组织的首领墨菲斯。 墨菲斯告诉他,现实世界其实是由一个名叫“母体”的计算机人工智能系统控制,人们就像他们饲养的动物,没有自由和思想,而尼奥就是能够拯救人类的救世主。 可是,救赎之路从来都不会一帆风顺,到底哪里才是真实的世界?
蓝桥杯知识点汇总:基础知识和常用算法
文章目录JAVA基础语法:算法竞赛常用的JAVA API:基础算法待更: 此系列包含蓝桥杯所考察的绝大部分知识点,一共有基础语法,常用API,基础算法和数据结构,和往年真题四部分,虽然语言以JAVA为主,但算法部分是相通的,C++组的小伙伴也可以看哦。所有文章的链接都会在此公布,还有很多没有更新,会持续更新,如果大佬发现文章有错误的地方请指正,我会十分感谢。另外,有什么问题可私信我~ JAVA基础
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东
破14亿,Python分析我国存在哪些人口危机!
2020年1月17日,国家统计局发布了2019年国民经济报告,报告中指出我国人口突破14亿。 猪哥的朋友圈被14亿人口刷屏,但是很多人并没有看到我国复杂的人口问题:老龄化、男女比例失衡、生育率下降、人口红利下降等。 今天我们就来分析一下我们国家的人口数据吧! 一、背景 1.人口突破14亿 2020年1月17日,国家统计局发布了 2019年国民经济报告 ,报告中指出:年末中国大陆总人口(包括31个
实现简单的轮播图(单张图片、多张图片)
前言 刚学js没多久,这篇博客就当做记录了,以后还会完善的,希望大佬们多多指点。ps:下面出现的都是直接闪动,没有滑动效果的轮播图。 单张图片的替换 原理 1.将几张图片叠在一起,通过改变"display:block"和"display:none"这两个属性实现替换。 (前提:在css中给所有图片加上display:none属性) 2.不用将图片叠在一起,将一个div当做"窗口",通过"of
强烈推荐10本程序员在家读的书
很遗憾,这个鼠年春节注定是刻骨铭心的,新型冠状病毒让每个人的神经都是紧绷的。那些处在武汉的白衣天使们,尤其值得我们的尊敬。而我们这些窝在家里的程序员,能不外出就不外出,就是对社会做出的最大的贡献。 有些读者私下问我,窝了几天,有点颓丧,能否推荐几本书在家里看看。我花了一天的时间,挑选了 10 本我最喜欢的书,你可以挑选感兴趣的来读一读。读书不仅可以平复恐惧的压力,还可以对未来充满希望,毕竟苦难终
Linux自学篇——linux命令英文全称及解释
man: Manual 意思是手册,可以用这个命令查询其他命令的用法。 pwd:Print working directory 显示当前目录 su:Swith user 切换用户,切换到root用户 cd:Change directory 切换目录 ls:List files 列出目录下的文件 ps:Process Status 进程状态 mk
Python实战:抓肺炎疫情实时数据,画2019-nCoV疫情地图
文章目录1. 前言2. 数据下载3. 数据处理4. 数据可视化 1. 前言 今天,群里白垩老师问如何用python画武汉肺炎疫情地图。白垩老师是研究海洋生态与地球生物的学者,国家重点实验室成员,于不惑之年学习python,实为我等学习楷模。先前我并没有关注武汉肺炎的具体数据,也没有画过类似的数据分布图。于是就拿了两个小时,专门研究了一下,遂成此文。 2月6日追记:本文发布后,腾讯的数据源多次变更u
智力题(程序员面试经典)
NO.1  有20瓶药丸,其中19瓶装有1克/粒的药丸,余下一瓶装有1.1克/粒的药丸。给你一台称重精准的天平,怎么找出比较重的那瓶药丸?天平只能用一次。 解法 有时候,严格的限制条件有可能反倒是解题的线索。在这个问题中,限制条件是天平只能用一次。 因为天平只能用一次,我们也得以知道一个有趣的事实:一次必须同时称很多药丸,其实更准确地说,是必须从19瓶拿出药丸进行称重。否则,如果跳过两瓶或更多瓶药
Java与Python学习通法(1)和(2)序言和编程语言发展史怎么学
大家好,我是 jacky 朱元禄,很高兴跟大家一起学习 《Java与Python学习通法系列》。 首先,说一下,我为什么要录这个课; 我们都已经知道Java 和 Python的视频教程和书籍,可以说是非常非常多了,那我录制本系列课的意义是什么呢? (1)课程特色一:我想告诉大家学习编程语言是有捷径的,这个捷径就是 理解技术背后的“哲学逻辑”,或者说是“人文逻辑”,相信你听完 jack
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ......
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!
阿里架构师花近十年时间整理出来的Java核心知识pdf(Java岗)
由于细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容! 整理了一份Java核心知识点。覆盖了JVM、锁、并发、Java反射、Spring原理、微服务、Zookeeper、数据库、数据结构等大量知识点。       欢迎大家加入java学习交流社区  点击加入   可获取文中文档       小编推荐:     
Python基础知识点梳理
python基础知识点梳理 摘要: 本文主要介绍一些平时经常会用到的python基础知识点,用于加深印象,也算是对于学习这门语言的一个总结与回顾。python的详细语法介绍可以查看官方编程手册,也有一些在线网站对python语法进行了比较全面的介绍,比如菜鸟教程: python3 教程|菜鸟教程 为了方便聚焦知识点,本文涉及的操作实例并不多,想学好一门语言关键还得自己多编码多实践。 python语
2020年2月全国程序员工资统计,平均工资13716元
趋势 2020年2月,中国大陆程序员平均工资13716元,比上个月增加。具体趋势如图: 各主要程序员城市工资变化 城市 北京,上海,深圳,杭州,广州四地的工资最高。 city 平均工资 最低工资 中位数 最高工资 招聘人数 百分比 北京 18098 3750 15000 45000 20529 9.53% 深圳 16903 5750 15000 37500 30941 14
Java坑人面试题系列: 包装类(中级难度)
Java Magazine上面有一个专门坑人的面试题系列: https://blogs.oracle.com/javamagazine/quiz-2。 这些问题的设计宗旨,主要是测试面试者对Java语言的了解程度,而不是为了用弯弯绕绕的手段把面试者搞蒙。 如果你看过往期的问题,就会发现每一个都不简单。 这些试题模拟了认证考试中的一些难题。 而 “中级(intermediate)” 和 “高级(ad
为什么说程序员做外包没前途?
之前做过不到3个月的外包,2020的第一天就被释放了,2019年还剩1天,我从外包公司离职了。我就谈谈我个人的看法吧。首先我们定义一下什么是有前途 稳定的工作环境 不错的收入 能够在项目中不断提升自己的技能(ps:非技术上的认知也算) 找下家的时候能找到一份工资更高的工作 如果你目前还年轻,但高不成低不就,只有外包offer,那请往下看。 外包公司你应该
相关热词 c# 压缩图片好麻烦 c#计算数组中的平均值 c#获取路由参数 c#日期精确到分钟 c#自定义异常必须继承 c#查表并返回值 c# 动态 表达式树 c# 监控方法耗时 c# listbox c#chart显示滚动条
立即提问