摘要:
1. netfilter与iptables Netfilter是由Rusty Russell提出的Linux 2.4内核防火墙框架,该框架既简洁又灵活,可实现安全策略应用中的许多功能,如数据包过滤、数据包处理、地址伪装、透明代理、动态网络地址转换(Network Address Translation,NAT),以及基于用户及媒体访问控制(Media Access Control,MAC)地址的过... 阅读全文
摘要:
FindViewByMe 是一个自动生成 FindViewById 代码的 IDEA/Android Studio 插件, 支持 Activity、Fragment 和 ViewHolder 中的 findViewById 的代码生成。 该插件适用于 IntelliJ IDEA 和 Android Studio,以下说明以 Android Studio (简称 AS )为例。 1. 下载和安装 ... 阅读全文
摘要:
在日常开发过程中难免会因为一时疏忽而留下一些Bug,这些Bug就是埋在程序里的定时炸弹,如果不能及时铲除就会导致程序的不稳定,异常或闪退的现象,从而导致用户的体验的下降。那么怎么才能找出这些埋在程序里的定时炸弹呢? 对程序员来说最头疼的事情莫过于找Bug了,尤其是找自己程序中的Bug,因为人的思维是 阅读全文
摘要:
sourceinsight-scan 是一款集成在 SourceInsight 中的c/c++代码静态分析插件,集成了cppcheck,coverity,pclint等业界优秀的静态分析工具的优点。 旨在帮助开发人员,在IDE中快速发现编译器无法发现的非语法错误,降低修复成本。 无需编译,平均扫描速度高达10W行/分钟,快速帮您发现潜在的质量风险,包括空指针,越界,内存泄漏及潜在的逻辑错误,平均准... 阅读全文
摘要:
今天把玩手头的那部Android手机时碰到一个问题,即因为权限问题无法将文件复制到/system/和/data/分区中,经过一番折腾后,算是解决了,在此记录一笔。本方所涉及到的命令输入,均用斜体字表示。 情况是这样的:该台Android手机不提供adb root的权限,但又不能装破解root权限的软件,若要往Android手机的/system/和/data/分区下拷一些文件, 是否有其它方法可以将... 阅读全文
摘要:
pthread_key_t和pthread_key_create()详解 下面说一下线程中特有的线程存储, Thread Specific Data 。线程存储有什么用了?他是什么意思了?大家都知道,在多线程程序中,所有线程共享程序中的变量。现在有一全局变量,所有线程都可以使用它,改变它的值。而如果每个线程希望能单独拥有它,那么就需要使用线程存储了。表面上看起来这是一个全局变量,所有线程都可以使用... 阅读全文
摘要:
Introduction: Android.mk编译文件是用来向Android NDK描述你的C,C++源代码文件的, 这篇文档描述了它的语法。在阅读下面的内容之前,假定你已经阅读了docs/OVERVIEW.TXT文件,了解了它们的脚色和用途。 概述: 一个Android.mk file用来向编译系统描述你的源代码。具体来说:-该文件是GNU Makefile的一小部分,会被编译系统解析一次或更... 阅读全文
摘要:
android的m、mm、mmm编译命令的使用 android源码目录下的build/envsetup.sh文件,描述编译的命令 - m: Makes from the top of the tree. - mm: Builds all of the modules in the current directory. - mmm: Builds all of the ... 阅读全文
摘要:
adb 常用命令大全1. 显示系统中全部Android平台: android list targets2. 显示系统中全部AVD(模拟器): android list avd3. 创建AVD(模拟器): android create avd --name 名称 --target 平台编号4. 启动模拟器: emulator -avd 名称 -sdcard ~/名称.im... 阅读全文
摘要:
有两种方式: 1、用tr 例如:UPPERCASE=$(echo $VARIABLE | tr '[a-z]' '[A-Z]') (把VARIABLE的小写转换成大写) LOWERCASE=$(echo $VARIABLE | tr '[A-Z]' '[a-z]') (把VARIABLE的大写转换成小写) 2、用typeset typeset -u ... 阅读全文
摘要:
system两层含义: 1、正确退出后。还需要再判断,操作成功或者操作失败。 2、错误退出。 #include <stdio.h> #include <stdlib.h> #include <sys/wait.h> #include <sys/types.h> int main() { pid_t 阅读全文
摘要:
转载链接:https://technet.microsoft.com/zh-cn/magazine/ee308453 可以配置 ClickOnce 信任提示以控制是否允许最终用户选择安装 ClickOnce 应用程序,如 Windows Forms 应用程序、Windows Presentation 阅读全文
摘要:
变量说明: $$Shell本身的PID(ProcessID)$!Shell最后运行的后台Process的PID$?最后运行的命令的结束代码(返回值)$-使用Set命令设定的Flag一览$*所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。$@所有参数列表。如 阅读全文
摘要:
在C语言中,如果使用GCC的话,可以通过attribute关键字声明constructor和destructor(C语言中如何在main函数开始前执行函数) #include <stdio.h> __attribute((constructor)) void before_main() { prin 阅读全文
摘要:
整数输入有理循环小数 1/7 = 0.142857142... 是个无限循环小数。 任何有理数都可以表示为无限循环小数的形式。 本题目要求即是:给出一个数字的循环小数表示法。 这段时间个人几篇文章介绍了改整数输入的文章. 关联文章的地址 /* 有理环循小数 1/7 = 0.142857142... 阅读全文
摘要:
问题引入 定义一个结构体的一般形式为: 例如有如下结构体: 那么一个这样的结构体变量占多大内存呢?也就是 cout<<sizeof(Stu)<<endl; 会输出什么? 在了解字节对齐方式之前想当然的会以为:sizeof(Stu) = sizeof(int)+sizeof(char)+sizeof( 阅读全文
摘要:
malloc的内存分配之 malloc(0)的内存分配情况 malloc的内存分配之 malloc(0)的内存分配情况 #include<iostream> using namespace std; int main() { char *p; if((p=(char *)malloc(0))==NU 阅读全文
摘要:
嵌入式笔试题:想让程序跳转到绝对地址0x100000处执行,该如何做? 请详细解释一下所给的答案: 网上看到有如下答案: *((void(*)(void))0x100000)(); 经过在VC++6.0和LINUX gcc4.4.3下测试,均不能通过编译。 VC++6.0报错:error C2100 阅读全文
摘要:
虽然使软件正确是一个工程合乎逻辑的最后一个步骤,但是在嵌入式的系统开发中,情况并不总是这样的。出于对低价产品的需求,硬件的设计者需要提供刚好足够的存储器和完成工作的处理能力。所以在嵌入式软件设计的最后一个阶段则变成了对代码的优化。 现代的C和C++编译器都提供了一定程度上的代码优化。然而,大部分由编 阅读全文