源代码

linux 下gcc的使用

自古美人都是妖i 提交于 2019-12-14 19:21:07
首先使用gcc要在linux环境下,我们可以使用真正的linux系统(不过这么做可能有一些麻烦)或者使用一些windows下的虚拟软件,可以使用虚拟机搭建的linux环境,这样可以很方便的进行linux开发。可以下载安装一个虚拟机软件,方法很简单和安装普通软件一样。(g++就是c++的使用) 在Linux系统中,可执行文件没有统一的后缀,系统从文件的属性来区分可执行文件和不可执行文件。而gcc则通过后缀来区别输入文件的类别,下面介绍gcc所遵循的部分约定规则。 .c为后缀的文件,C语言源代码文件; .a为后缀的文件,是由目标文件构成的库文件; .C,.cc或.cxx 为后缀的文件,是C++源代码文件; .h为后缀的文件,是程序所包含的头文件; .i 为后缀的文件,是已经预处理过的C源代码文件; .m为后缀的文件,是Objective-C源代码文件; .o为后缀的文件,是编译后的目标文件; .s为后缀的文件,是汇编语言源代码文件; .S为后缀的文件,是经过预编译的汇编语言源代码文件 一. 常用编译命令选项 假设源程序文件名为test.c。 无选项编译链接 用法:gcc test.c 作用:将test.c预处理、汇编、编译并链接形成可执行文件。这里未指定输出文件,默认输出为a.out。 选项 -o 用法:gcc test.c -o test 作用:将test.c预处理、汇编

Alpha阶段项目复审

你。 提交于 2019-12-13 02:09:40
小组的名字和链接 优点 缺点 最终名次 量子波动打码队 优化了后台数据库,把个人信息和发布的信息分开,便于后台人员查看和审核 bug:手机运行时会出现闪退项目目标:拾主能将自己捡到的物品发到小程序上,而失主也能在小程序上发布自己丢失物品的信息,失主可以在上面通过信息匹配寻找自己的物品 项目风险:在拾主和失主进行失物交接的时候可能会有安全问题。 失主的个人信息也有被有心人窃取的风险。 用户痛点:小程序并没有提醒功能,失主要定期查看小程序才知道是否有拾主捡到主要和次要需求: 能及时更新后台发布的失物和拾物的信息, 在发布的信息下添加留言功能,丢失物品的用户可以留下联系方式 源代码管理:源代码有按各个功能进行代码的分类,部分关键代码也有注释 领导这一小组:我会更多的往更新失物信息以及提新功能这方面去优化这一小程序。 3 计科五班只有一位大哥 a.样式丰富、种类齐全的菜单。 b.对菜单进行分类,便于用户搜索查找。 c.界面整洁,操作简单。 d.用户能对点过的外卖进行评论,与商家沟通。 e.进行用户登录。 f.对商家进行收藏。 g.对外卖送达时间进行估计。 bug:基本功能都大致完成也没什么bug,存在不足的是qq浏览器并不能正常运行商家页面项目目标: 1.可以上架五六饭的商品 2.学生可以反馈对某样食品的需求度,来反馈给商家 项目风险:五六饭的最大一个问题是食品卫生并不能保证

解决Eclipse查看源代码出现Source not found的问题

泄露秘密 提交于 2019-12-12 12:40:13
问题描述 在Ctrl+鼠标左键点击查看Map源码的时候,出现如下图所示意的Source not found问题,无法查看Map的源代码。 问题原因: 从图中描述可以知道,问题出在rt.jar文件没有源附件,需要我们添加source attachment才能查看。 解决方法 src.zip文件:Java所有类的source attachment,我们只要把它添加到rt.jar文件中就可以解决我们的问题。 首先,点击Window -> 选择Preferences,如下图所示: 接着,可以按照如下步骤进行: 在Preferences弹窗中,选中java -> Installed JREs ->选中jre后点击Edit 在Edit JRE弹窗中, 选中rt.jar文件 -> 点击Source Attachment 在Source Attachment Configuration弹窗中, 选中External location -> 点击External file… 最后,选择src.zip文件。 src.zip文件一般在\Java\jdk-10.0.1\lib目录下。 完成上述操作并保存以后,我们发现Map.class的源码可以查看了。(っ•̀ω•́)っ✎⁾⁾ 来源: CSDN 作者: VeggieOrz 链接: https://blog.csdn.net/weixin_42292229

编程语言

a 夏天 提交于 2019-12-10 23:52:20
机器语言  ------>   汇编语言   ------>  高级语言 机器语言 :由于计算机内部只能接受二进制代码,因此,用二进制代码0和1描述的指令称为机器指令,全部机器指令的集合构成计算机的机器语言,机器语言属于低级语言。    汇编语言 :其实质和机器语言是相同的,都是直接对硬件操作,只不过指令采取了英文缩写的标识符,更容易识别和记忆。    高级语言 :是大多数编程人员的选择,和汇编语言相比,他不但将许多相关的机器指令合成为单条指令,并且去掉了与具体操作相关但与完成工作无关的细节,高级语言主要是相对于汇编语言而言,它并不是特指某一种具体的语言,而是包含了许多编程语言。如C/C++,JAVA,PHP,PYTHON等都属于高级语言。   机器语言:优点是最底层,速度快,缺点是复杂,开发效率低   汇编语言:优点是比较底层,速度快,缺点是复杂,开发效率低   高级语言:编译型语言执行速度快,不依赖语言环境运行,跨平台差        解释型跨平台比较好,一份代码,到处使用,缺点是执行效率慢,依赖解释器运行 高级语言所编制的程序不能被计算机所知别,必须讲过转换才能被执行,按照转换方式,可以将其分为两类,一类是编译类,一类是解释类    编译类 :就是在应用源码程序执行之前,就将程序源代码“翻译”成目标代码(机器语言),因此其目标程序可以脱离其语言环境独立执行。使用比较方便

有没有办法从APK文件中获取源代码?

最后都变了- 提交于 2019-12-10 18:25:33
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 我的笔记本电脑上的硬盘驱动器刚刚崩溃,并且丢失了过去两个月来我一直在使用的应用程序的所有源代码。 我所拥有的就是APK文件,该文件存储在我发送给朋友时的电子邮件中。 有什么办法可以从这个APK文件中提取我的源代码? #1楼 这两篇文章描述了如何结合使用 apktool 和 dex2jar 来获取 APK 文件,并创建一个可以构建和运行它的Eclipse项目。 http://blog.inyourbits.com/2012/11/extending-existing-android-applications.html http://blog.inyourbits.com/2012/12/extending-existing-android-applications.html 基本上,您: 使用 apktool 将资源文件移出apk 使用 dex2jar 获得一个jar文件,其中包含Eclipse所需格式的类。 创建一个Eclipse项目,将其指向资源文件和新的jar文件 使用zip实用程序打开jar文件并删除现有资源 使用 JDGui 打开jar文件以查看源代码 从 JDGui 所需的任何源代码,将其粘贴到Eclipse中的类中并对其进行修改 从jar文件中删除该类(因此您没有多次定义相同的类) 运行。 #2楼

微软c标准库中字符串操作源代码

和自甴很熟 提交于 2019-12-10 07:47:19
位置:VC\crt\src (crt C RunTime library) char * strcat(char * dst, const char * src) { char * cp = dst; while(*cp) { cp++; /* find end of dst */ } while (*cp++ = *src++); /* Copy src to end of dst */ return dst; /* return dst */ } char * strcpy(char * dst, const char * src) { char * cp = dst; while (*cp++ = *src++); /* Copy src over dst */ return dst; } char * strchr(const char * string, int ch) { while (*string && *string != (char)ch) { string++; } if (*string == (char)ch; return (char *)string; return NULL; } int strcmp(const char * src, const char * dst) { int ret = 0; while (!(ret = *

软件工程大作业(学生会管理系统)Web端个人总结报告

感情迁移 提交于 2019-12-09 23:20:19
软件工程大作业(学生会管理系统)Web端个人总结报告 一、小组信息 1、所在小组:第二组 2、小组选题:学生会管理系统 3、项目源代码链接: Web端源代码: code 小程序端源代码: code APP端源代码: code 后端源代码: code 4、项目各类文档链接 项目相关文档管理(会议记录,需求文档,API文档): doc 墨刀原型: model 相关博客文章 需求文档: doc 各类图: doc 原型展示: doc 二、项目中本人工作介绍 本次课程团体大作业,本人具体工作主要有一下三项: 1、Web端的设计与开发 1.1 Web设计阶段划分 本人在进行Web端的设计与开发时,将我的工作分为以下四个阶段: 阶段一:理解和整理各项需求,确定好将Web端分为多少个功能模块,各功能模块又包含多少子功能模块,并确认好各功能模块之间是否存在联系以及存在什么样的联系,定下Web端的设计方向; 阶段二:根据阶段一确定下的设计方向,进行原型的设计开发,大致完成静态页面的总体设计; 阶段三:进行前后对接,完成各个功能模块; 阶段四:设计测试数据,并对Web进行各项测试。 1.2 Web端各功能模块划分 本人将Web端划分为以下几个主要功能模块,并完成对它们的全部设计和实现工作,不同权限的用户对应不同的功能模块,用户的权限功能划分明确,是本项目的一大亮点: 登陆注册模块 人事管理模块

Centos7 SVN搭建

不羁的心 提交于 2019-12-08 12:17:50
介绍 Subversion(SVN)是一个开源的版本控制系统,也就是说Subversion管理着随时间改变的数据。 这些数据放置在一个中央资料档案库(repository)中。这个档案库很像一个普通的文件服务器,不过它会记住每一次文件的变动。这样您就可以把档案恢复到旧版本,或浏览文件的变动历史。repository (源代码库):源代码统一存放的地方 Checkout(提取):当您手上没有源代码时,您需要从库中检出一份源代码 提交(提交):如果您已经修改了代码,您需要提交到存储库 更新(更新):当您已经结账了一份源代码,更新一下,您就可以与储存库上的源代码同步,手上您的代码就会有最新的变更 日常开发过程其实就是这样的(假设您已经结帐并且已经工作了几天):更新(获得最新的代码) - >作出自己的修改并调试成功 - > Commit(大家就可以看到您的修改 了)。 如果您与同事同时修改了同一个文件,SVN可以合并你们的改动,实际上SVN管理源代码是以行为单位的,就是说你们只要不是修改了同一行程序,SVN都会自动合并两种修改。如果是同一行,SVN会提示文件Confict(冲突),需要手动确认。 系统环境: [root @ ecs-4082〜]#cat / etc / redhat-release CentOS Linux版本7.3.1611(核心) [root @ ecs-4082〜]

如何在在阿里云服务器(ECS)上搭建nginx服务器?

ⅰ亾dé卋堺 提交于 2019-12-07 21:29:05
现在假设你已经拥有了阿里云服务器,ip是139.128.33.11(假的,读者需要换成自己的ip地址)。并且没有选择任何安装包。现在ECS是完全空的,除了必须的Linux系统外,其他什么都没有。还有一点,本文选择的是Ubuntu Linux14.04 64位版本。Linux比较节省内存,因为并没有GUI部分,纯控制台操作(看命令行头疼的同学请绕道)。 本文介绍了如何在阿里云服务器上从零开始搭建nginx服务器。阿里云服务器(ECS)相信大家都不陌生,感兴趣的同学可以去购买,或到体验馆去体验(半个月有效期)。至于如何注册、管理ECS这里就不详细介绍了。因为官方文档已经写的很清楚了。如果还不清楚,打咨询电话询问。 本文只安装nginx服务器,后面的文章会配置其他环节,如PHP、Java、MySQL等。 在安装之前需要完成如下两项工作。 找一个工具上传文件(如nginx安装包) 连接到服务器的Console上,以便执行命令 由于现在服务器还是空的,所以没有ftp服务启动,因此,只能用sftp,至于什么是sftp,如何用sftp(SSH File Transfer Protocol),自己到网上搜索。总之,sftp使用了SSH协议,默认端口号是22。用法和ftp类似。大多数ftp客户端都支持sftp。谁便找一个支持sftp的工具即可。然后利用ECS的用户名(root)和密码连接sftp即可

listview所带来的滑动冲突

雨燕双飞 提交于 2019-12-07 14:25:28
在android中,有时候会遇到子控件和父控件都要滑动的情况,尤其是当子控件为listview的时候。这种情况较常见,典型的launcher,每个屏幕上放上listview就会出现这种情况。 有两点需要注意: 一般来说,view的onTouchEvent返回true,即消耗点击事件,viewgroup的onInterceptTouchEvent返回false,即不拦截点击事件,这一点从android源码中可以看出来。但是listview的父类AbsListView重写了onInterceptTouchEvent,返回了true,注意这里不是一定返回true,但是我觉得这一点可以先忽略。 onTouchEvent和onInterceptTouchEvent的调用顺序。点击事件从父控件向子控件传递,如果父控件不拦截,则交由子控件拦截,如果父控件拦截了,则交由父控件的onTouchEvent处理,如果最终处理点击事件的控件的onTouchEvent返回了false,则将会直接调用其父控件的onTouchEvent,如此向上类推。 其实解决方法也很简单:重写父控件的onInterceptTouchEvent函数,在move的时候根据需要返回true,比如左右滑动返回true,其他情况均返回false。这样,当左右滑动的时候,由于onInterceptTouchEvent返回了true