
技术联盟
pengfoo
这个作者很懒,什么都没留下…
展开
-
如何系统地学习数据挖掘
转自知乎:http://www.zhihu.com/question/20751219/answer/24345252?utm_campaign=official_account&utm_source=weibo&utm_medium=zhihu&utm_content=answer转载 2014-04-22 21:34:24 · 2043 阅读 · 0 评论 -
UNIX网络编程学习(1)--开启ubuntu daytime服务
命令操作依次是:sudo apt-get install xinetdfupeng@ubuntu:/etc$ cd xinetd.dfupeng@ubuntu:/etc/xinetd.d$ lschargen daytime discard echo timefupeng@ubuntu:/etc/xinetd.d$ vi daytimefupeng@ubuntu:/原创 2012-03-19 22:31:07 · 2781 阅读 · 2 评论 -
visual studio 2008 开发c++学习(二)--入门hello world程序
从如何跑hello world,来熟悉vs2008的环境。先 创建一个 新项目;项目类型 visual c++ ---win32---win32控制台应用程序;输入 项目名称;下一步中 选择 空项目;在项目名 上 右击 选择 添加 新建项;选择 c++文件;命名为 Main;既可以在main中写上main函数。然后生成解决方案。ctrl +F5 运行。F5原创 2011-11-26 22:04:20 · 6018 阅读 · 0 评论 -
codeblocks处理undefined reference to `pthread_create'
codeblocks处理undefined reference to `pthread_create'困扰了半天,终于解决 如果使用命令行是 gcc 文件名.c -lpthread -o 生成文件名 首先看命令行是不是有问题,如果没有,就按照以下步骤操作 首先看是否与我的错误相同 如果相同在工程上点击右键,选择构建工程,如果是英文应该是build p转载 2012-03-16 11:18:23 · 5361 阅读 · 0 评论 -
双向链表结点的插入
// * ======================================== */// * 程式实例: 4_3_2.c */// * 双向链结串列内节点插入 */// * ======================================== */#include stru转载 2012-02-28 20:23:13 · 1833 阅读 · 0 评论 -
操作系统调度算法
5.3.1基本原理从前面我们可以看到,进程运行需要各种各样的系统资源,如内存、文件、打印机和最宝贵的CPU等等,所以说呢,调度的实质就是资源的分配。系统通过不同的调度算法(Scheduling Algorithm)来实现这种资源的分配。通常来说,选择什么样的调度算法取决于的资源分配的策略(Scheduling Policy),我们不准备在这里详细说明各种调度算法,只说明与Linux调度相关的几转载 2012-02-28 20:44:34 · 4509 阅读 · 0 评论 -
双向链表的建立
// * ======================================== */// * 程式实例: 4_3_1.c */// * 双向链结串列的建立 */// * ======================================== */#include st转载 2012-02-28 20:26:45 · 1680 阅读 · 0 评论 -
c中strcpy函数的使用注意:(来源:c和指针)
原型:char *strcpy(char *dst, char const *src);dst 必须是个字符数组或者是一个指向动态分配内存的数组的指针,不能使用字符串常量。必须保证目标字符数组的空间足以容纳需要复制的字符串。例:char message[]="Original message";...strcpy(message,"A different message原创 2012-02-20 10:13:38 · 1431 阅读 · 0 评论 -
指向数组的指针
指向数组的指针应该这样来初始化:int matrix[3][10];int (*p)[10]=matrix;对于int matrix[3][10];…func2(matrix);func2(matrix)的函数原型应该是void func2(int (*mat)[10]);或者是:void func2(int mat[][10]);而声名成voi原创 2012-02-20 09:16:49 · 802 阅读 · 0 评论 -
hash函数的几种
计算理论 中,没有Hash函数的说法,只有单向函数的说法。所谓的单向函数,是一个复杂的定义,大家可以去看计算理论或者密码学方面的数据。用“人类”的语言描述 单向函数就是:如果某个函数在给定输入的时候,很容易计算出其结果来;而当给定结果的时候,很难计算出输入来,这就是单项函数。各种加密函数都可以被认为 是单向函数的逼近。Hash函数(或者成为散列函数)也可以看成是单向函数的一个逼近。即它接近于满足单转载 2012-02-27 22:00:44 · 1993 阅读 · 0 评论 -
可变参数 stdarg (二)
读Linux内核中的vsprintf函数的时候遇到了C语言的可变参数调用,查了挺多资料还是这篇比较详细,而且自己验证了下,确实如此 (一)写一个简单的可变参数的C函数 下面我们来探讨如何写一个简单的可变参数的C函数.写可变参数的 C函数要在程序中用到以下这些宏: void va_start( va_list arg_ptr, prev_param ); type va_arg(转载 2012-02-18 21:54:14 · 890 阅读 · 0 评论 -
可变参数表的用法 stdarg
2010年08月25日 星期三 上午 00:06转载自 ___yiren___最终编辑 jrckkyy一、 printf ( "I love you" ); printf ( "%d", a );printf ( "%d,%d", a, b ); 第一、二、三个printf分别接受1、2、3个参数,让我们看看prin转载 2012-02-18 21:40:24 · 830 阅读 · 0 评论 -
#define中的 #与##
在#define中,标准只定义了#和##两种操作。#用来把参数转换成字符串,##则用来连接两个前后两个参数,把它们变成一个字符串。 例子:#include #define paster(n) printf("token"#n"=%d\n",token##n)int main(){ int token9=10; paster(9); getchar(); re原创 2012-02-22 11:42:32 · 985 阅读 · 0 评论 -
关于内存对齐
当在C中定义了一个结构类型时,它的大小是否等于各字段(field)大小之和?编译器将如何在内存中放置这些字段?ANSI C对结构体的内存布局有什么要求?而我们的程序又能否依赖这种布局?这些问题或许对不少朋友来说还有点模糊,那么本文就试着探究它们背后的秘密。 首先,至少有一点可以肯定,那就是ANSI C保证结构体中各字段在内存中出现的位置是随它们的声明顺序依次递增的,并且第一个字段的首地址转载 2012-02-21 11:02:15 · 2732 阅读 · 3 评论 -
[Object C]object c中完成将xml转换为json
参考:http://troybrant.net/blog/2010/09/simple-xml-to-nsdictionary-converter/现在只知道了怎么用,具体原理还有待深究。将xml转换为json,分为两步:1.将xml转换为NSDictionary。2.将NSDictionary 转换为json #import @interface XMLReade原创 2013-06-05 21:21:04 · 1568 阅读 · 0 评论 -
自动提升为int类型
看一道题目#include using namespace std;int main(){ unsigned char a = 0xA5; //printf("a=%d\n",a); //printf("~a=%d\n",~a); unsigned char b = ~a>>4; printf("%d\n",b); //return 0;}其结果原创 2012-12-20 22:01:42 · 1102 阅读 · 0 评论 -
不错的技术博客汇总(持续更新)
以下排序不分先后,并不是按照重要性进行排序的。同时欢迎各位贴出自己收藏的不错的博客。1、结构之法,算法之道博主研究者july有对算法的较多例子适合对算法感兴趣的朋友特别是应届毕业生找工作时应付企业的笔试http://blog.youkuaiyun.com/v_july_v/article/list 2、百度运维团队博客 没具体看过http://www.baidu-ops.com/原创 2012-12-02 21:02:31 · 1422 阅读 · 0 评论 -
现代浏览器的工作原理
转自:http://blog.jobbole.com/12749/英文原文:Tali Garsiel,编译:zzzaquarius简介浏览器可以被认为是使用最广泛的软件,本文将介绍浏览器的工 作原理,我们将看到,从你在地址栏输入google.com到你看到google主页过程中都发生了什么。将讨论的浏览器今天,有五种主流浏览器——IE、Firefox、Safari、Chrome转载 2012-12-09 16:42:30 · 1390 阅读 · 1 评论 -
用code::blocks写C/C++程序
用code::blocks写C/C++程序促使我写这个简短博客的原因是,一段时间以前(八九个月前用code::blocks写过程序),主要在Linux下学习UNIX网络编程。今天再次用CB时,竟然忘了最基本的建立项目的操作,胆颤心惊,下次再用时,会不会还不记得,干脆记录下来,以备后面查阅。 1、 建立项目:File->New->Project2、 选择Conso原创 2012-12-04 20:53:19 · 8603 阅读 · 1 评论 -
记录mini-task--代理邮件发收系统的开发过程(三)
首先,需要说明的是,这篇博文是在续写我之前写的两篇博客之后的,其他两篇博客具体链接参见:记录mini-task--代理邮件发收系统的开发过程(一)http://blog.youkuaiyun.com/kuzuozhou/article/details/7881335 记录mini-task--代理邮件发收系统的开发过程(二)http://blog.youkuaiyun.com/kuzuozhou/ar原创 2012-12-04 15:57:44 · 7182 阅读 · 0 评论 -
高效sql必杀技
原作者:robbinson_ 0612原文地址:http://blog.youkuaiyun.com/robinson_0612/article/details/7406672No SQL,No cost. SQL语句是造成数据库开销最大的部分。而不良SQL写法直接导致数据库系统性能下降的情形比比皆是。那么如何才能称得上高效的SQL语句呢?一是查询优化器为当前的SQL语句生成最佳的执行计划,保证数转载 2012-12-04 10:45:49 · 957 阅读 · 0 评论 -
互联网协议入门
转自http://kb.cnblogs.com/page/144577/我们每天使用互联网,你是否想过,它是如何实现的? 全世界几十亿台电脑,连接在一起,两两通信。上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗? 互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite)转载 2012-11-14 13:19:23 · 887 阅读 · 1 评论 -
腾讯实习笔试题--简单计算器程序的c语言实现
/*本程序是一个简单的计算器模拟程序。对任意给定的正确的四则表达式,程序计算其结果值并输出。表达式中运算分量为无正负号整数,运算符为+ - * / ,圆括号按常规配对,表达式以“=”结束。函数getach()为获取表达式的一个合法字符,并将字符存入变量curch;函数指针数组func[]是为了统一加减乘除计算而设置的。*/#include #include #include int原创 2012-01-05 18:38:12 · 7453 阅读 · 3 评论 -
关于敏捷开发的两道选择题
大家帮忙参谋参谋,第一题我感觉b,c,d都对?第二题实在不知道选啥了?大家给点意见吧。。原创 2012-09-19 16:22:48 · 1532 阅读 · 0 评论 -
备战校园招聘索引
【算法篇】:http://blog.youkuaiyun.com/v_july_v/article/具体为:九月腾讯,创新工场,淘宝等公司最新面试30题:171-200十月百度,阿里巴巴,迅雷,搜狗最新面试70题:201-270十月下旬腾讯,网易游戏,百度,迅雷 270-330微软、谷歌等面试题http://blog.youkuaiyun.com/xiaoxieqingfa/article/d原创 2012-09-05 14:27:14 · 822 阅读 · 1 评论 -
Java多态的一个简单入门的例子
public class Animal { public String name; Animal(String name){ this.name = name; } public void enjoy(){ System.out.println("叫声"); } }/** * *//** * @author kuzuoz原创 2012-05-27 21:02:24 · 1413 阅读 · 0 评论 -
可变参数宏的用法举例--求平均数的例子
#include using namespace std;#include float average(int n_values,...){ va_list var_arg;//#define char *va_list int count; float sum=0; va_start(var_arg,n_values); for(count=0;c原创 2012-02-19 10:57:47 · 1440 阅读 · 0 评论 -
关于c中的assert
assert( ); 当expression结果为“假”时,会在stderr中输出这条语句所在的文件名和行号,以及这条表达式。这只在调试版本中起作用,在Release版本中不会产生任何代码。通常当我们使用assert时,都在强烈说明一个含义:在这里必然如此。它通常用于一个函数的先验条件和后验条件的检查。比如我写一个C风格复制字符串的函数,并且认为调用者不应该传入NULL指针:转载 2012-02-18 10:33:22 · 992 阅读 · 0 评论 -
Linux/Unix C编程之的perror函数,strerror函数,errno
#include // void perror(const char *msg);#include // char *strerror(int errnum);#include //errnoerrno是错误代码,在errno.h头文件中void perror(const char *s)perror是错误输出函数,在标准输出设备上输出一个错误信息。参数s一般是参数错转载 2012-02-25 11:06:06 · 2117 阅读 · 0 评论 -
visual studio的调试技巧
文章转自:http://msdn.microsoft.com/zh-cn/downloads/gg213858.aspx这是我写的关于VS2010和.Net4发布的博客系列的第26篇。今天的博文包含了一些有用的能用于VS的调试技巧。 我的朋友Scott Cate(他写了很多很好的关于VS使用技巧和窍门的博客)最近向我强调了这些很好的技巧,大部分使用VS的开发人员好像不知道这些技巧(即使他们转载 2012-01-01 15:50:27 · 2066 阅读 · 0 评论 -
四层与七层负载均衡的区别
转自:http://blog.chinaunix.net/space.php?uid=20583479&do=blog&id=2982433负载均衡设备也常被称为"四到七层交换机",那么四层和七层两者到底区别在哪里?所谓四层就是基于IP+端口的负载均衡;七层就是基于URL等应用层信息的负载均衡;同理,还有基于MAC地址的二层负载均衡和基于IP地址的三层负载均衡。换句换说,二转载 2011-12-17 21:10:16 · 1223 阅读 · 0 评论 -
虚拟地址空间,堆栈,堆,数据段,代码段
进程的虚拟地址空间,堆栈、堆、数据段、代码段上图是进程的虚拟地址空间示意图。堆栈段: 1. 为函数内部的局部变量提供存储空间。 2. 进行函数调用时,存储“过程活动记录”。 3. 用作暂时存储区。如计算一个很长的算术表达式时,可以将部分计算结果压入堆栈。数据段(静态存储区): 包括BSS段的数据段,BSS段存储未初始化的全局变量、静态变量。数据段存储经过转载 2011-12-17 22:39:54 · 1713 阅读 · 0 评论 -
程序代码,常量,局部变量,全局变量在内存中的保存位置
全局变量、静态局部变量保存在全局数据区,初始化的和未初始化的分别保存在一起;普通局部变量保存在堆栈中;全局变量和局部变量在内存里的区别? 一、预备知识—程序的内存分配 一个由c/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap)转载 2011-12-17 22:29:39 · 3216 阅读 · 4 评论 -
visual studio 2008 开发c++学习(一):参考网上材料
使用项目和解决方案用 Visual Studio 编写 Visual C++ 程序的第一步是选择项目的类型。对于每种项目类型,Visual Studio 都为您设置编译器设置并生成起始代码。 创建新项目在“文件”菜单中,指向“新建”,然后单击“项目...”。 在“项目类型”区域中,单击“Win32”。然后,在“Visual Studio 已安装的模板”窗格中,单击“Win3转载 2011-11-26 21:01:23 · 5784 阅读 · 0 评论 -
MAC如何显示隐藏文件和隐藏隐藏文件的命令
苹果Mac OS X操作系统下,隐藏文件是否显示有很多种设置方法,最简单的要算在Mac终端输入命令。显示/隐藏Mac隐藏文件命令如下(注意其中的空格并且区分大小写):显示Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles -bool true隐藏Mac隐藏文件的命令:defaults write com.apple.finder转载 2011-11-01 15:36:30 · 1149 阅读 · 0 评论 -
关于端口转发
在网吧通过路由器或者代理连接到外网,而在内网建立和运行网络服务器或FTP服务器是没办法使外网用户直接访问的,通过在路由上的NAT开启建立相应端口转发的映射,你可以指示路由器转发对某一特定网端口(如80 ,为网络服务器或21为FTP服务器) 所有的信息为本地网络。 这意味着,如果一转载 2011-10-06 16:48:26 · 1008 阅读 · 0 评论 -
mac下修改后的ns2 install文件
#! /bin/sh # # Copyright (C) 2000 by USC/ISI # All rights reserved. # # Redistribution and use in source and binary forms are perm原创 2011-08-16 13:48:39 · 1108 阅读 · 0 评论 -
Linux环境下创建静态库和动态库
我们通常把一些公用函数制作成函数库,供其它程序使用。函数库分为静态库和动态库两种。静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在。本文主要通过举例来说明在转载 2011-09-05 12:22:50 · 705 阅读 · 0 评论 -
通信专业如何发论文
在开始打算写论文之前,你首先需要确定自己的研究内容,也就是你打算写点啥,比如是做物理层还是做上层。我主要做的上层,就是MAC层的无线资源管理。更高层的路由什么的我也看过,但是没写过paper。确定了研究内容之后,如果你对所研究的内容不是太了解(例如你是个初学者或者是转专业学生,就转载 2011-09-04 20:30:36 · 3952 阅读 · 2 评论 -
Linux下如何用GCC编译动态库
Linux下之所以有这许多的依赖关系,其中一个开发原则真是功不可没。这个原则就是:尽量不重复做别人已经做过的事。换句话说就是尽量充分利用别人的劳动成果。这就涉及到如何有效的进行代码复用。1 为什么要使用库?关于代码复用的途径,一般有两种。粘贴复制这是最没有技术转载 2011-09-05 12:26:52 · 888 阅读 · 0 评论