C/C++/Java
lzflydream
IT菜鸟相互学习共同进步
展开
-
结构体对齐问题
struct data 是8字节对齐 { int cat; 4 int a[5]; 4*5 =20double dog; 8} size 是32 32刚好是8的倍数 struct data 8字节对齐{ int cat; 4int a[6]; 4*6=2原创 2013-04-02 12:19:19 · 1021 阅读 · 0 评论 -
C语言简单实现五子棋
五子棋实现代码#include#define M 9#define N 9void print(int a[M][N]){ int i,j; for(i=0;i<M;i++) { for(j=0;j<N;j++) printf(" %d",a[i][j]); printf("\n"); }}int check(int a[M][N]){ int i,j;原创 2013-05-28 19:58:18 · 3136 阅读 · 4 评论 -
一些笔试的代码
1、非递归求最小公倍数和最大公约数#includevoid main(){int a,b,num1,num2,temp;printf("please input num1 and num2 \n");scanf("%d%d",&num1,&num2);if(num1 > num2){a = num1;b = num2;}else{a = num2;b = num原创 2013-04-03 12:14:49 · 1957 阅读 · 0 评论 -
Struts2学习笔记
目录Ø Actionn 简单数据校验Ø ResultØ 常用配置文件Ø OGNL & ValueStackØ TagsØ ---------------------Projectn 类型转换、上传与下载、interceptor、防止重复提交Ø MVC思想深入剖析Ø 源码解读Ø 其他话题 01 Struts2原创 2013-06-12 16:31:53 · 2444 阅读 · 4 评论 -
Hibernate学习笔记
课程内容1 HelloWorlda) Xmlb) annotation2 Hibernate原理模拟 -什么是O/R Mapping以及为什么要有O/R Mapping3 常见的0/R框架(了解)4 hibernate基础配置(重点)5 ID生成策略(重点AUTO)6 Hibernate原创 2013-06-08 17:26:00 · 2043 阅读 · 0 评论 -
Spring学习笔记
课程内容1. 面向接口(抽象)编程的概念与好处2. IOC/DI的概念与好处a) inversion of controlb) dependency injection3. AOP的概念与好处4. Spring简介5. Spring应用IOC/DI(重要)a) xmlb) annotatio原创 2013-06-12 16:22:49 · 1555 阅读 · 0 评论 -
Java笔试面试
1、栈与堆都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。Java的堆是一个运行时数据区,类的对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarray等指令建立,它们不需要程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为原创 2013-04-25 19:15:04 · 1924 阅读 · 1 评论 -
大整数加减乘除
大整数加减乘除#include #define MAXINT 1000int compare(int a[],int b[]);int bigplus(int a[],int b[],int c[]);int bigsub(int a[],int b[],int c[]);int bigmult(int a[],unsigned int b,int c[]);int bigmult原创 2013-08-18 21:36:58 · 1249 阅读 · 0 评论 -
C/C++笔试题
1、给一个数组,元素都是整数(有正数也有负数),寻找连续的元素相加之和为最大的序列。如:1、-2、3、5、-4、6 连续序列3、5、-4、6的和最大。如元素全为负数,则最大的和为0,即一个也没有选。/*array[] 输入数组n 数组元素个数 返回最大序列和*/int find_max_sum(int array[]原创 2013-04-22 21:21:31 · 1869 阅读 · 2 评论 -
金山2013笔试题含答案
1、从键盘任意输入0-9之间的任意一个数字,显示数字的电子格式import java.util.Scanner;/*A, B, C, D 表示数字的各二进制位a, b, c, d, e, f, g 表示 LED 的各段,为 1 时该段显示,为 0 时该段不显示 a ####### # # b f # g # ####### #原创 2013-06-07 21:46:20 · 2187 阅读 · 5 评论 -
数据结构的一些代码
1、链表代码#include #include typedef struct Node{ int data; struct Node *next;}LinkNode,*List,*Position;List init(){ List s; s = (List)malloc(sizeof(LinkNode)); s->data = 0;原创 2013-04-15 16:06:05 · 2261 阅读 · 0 评论 -
Java解析XML的四种方式详解与比较
1.详解 1)DOM(JAXP Crimson解析器) DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准。DOM是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作。由于它是基于信息层次的,因而DOM被认为是基于树或基于对象的。DOM以及广义的基于树的处理具有几个优原创 2013-05-11 14:14:35 · 1965 阅读 · 0 评论 -
Java反射详解
本篇文章采用小例子来说明,因为我始终觉的,案例驱动是最好的,要不然只看理论的话,看了也不懂,不过建议大家在看完文章之后,在回过头去看看理论,会有更好的理解。下面是java反射的三个例子Reflection,通过一个类名,打印出构造函数,方法和变量package senior;import java.lang.reflect.Constructor;import java.la原创 2013-05-14 13:56:40 · 1600 阅读 · 0 评论 -
编程之美
1.1 cpu使用问题#include #include #include #include using namespace std;//第一种方式void main(){ INT64 start=0; int busy=10; int idle=busy; cout<<"CPU使用率问题"; while(true) { start=GetTickCount原创 2013-05-03 12:42:30 · 1770 阅读 · 0 评论 -
Java中的序列化
当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列的形式在网络上传送。发送方需要把这个Java对象转换为字节序列,才能在网络上传送;接收方则需要把字节序列再恢复为Java对象。把Java对象转换为字节序列的过程称为对象的序列化。把字节序列恢复为Java对象的过程称为对象的反序列化。对象的序列化主要有两种用途:1) 把对象的原创 2013-05-06 16:52:51 · 1082 阅读 · 0 评论 -
Java编写截取字符串的函数
import java.util.Scanner;/* * 编程:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”。 */public class SplitString { String Spli原创 2013-08-26 22:40:48 · 1806 阅读 · 0 评论 -
类String的构造函数拷贝构造函数和析构函数
构造函数、析构函数与赋值函数是每个类最基本的函数。它们太普通以致让人容易麻痹大意,其实这些貌似简单的函数就象没有顶盖的下水道那样危险。每个类只有一个析构函数和一个赋值函数,但可以有多个构造函数(包含一个拷贝构造函数,其它的称为普通构造函数)。对于任意一个类A,如果不想编写上述函数,C++编译器将自动为A产生四个缺省的函数(也只是在需要的时候才会产生),如A(void); // 缺省的无参数原创 2013-04-29 22:22:25 · 2711 阅读 · 2 评论 -
遍历二叉树的各种操作(非递归遍历)
更多二叉树的操作见http://blog.csdn.net/Hackbuteer1/article/details/6686858 http://blog.csdn.net/Hackbuteer1/article/details/8022138先使用先序的方法建立一棵二叉树,然后分别使用递归与非递归的方法实现前序、中序、后序遍历二叉树,并使用了两种方法来进行层次遍历二叉树,一种方法转载 2013-05-09 12:02:18 · 1402 阅读 · 0 评论 -
函数模板与类模板的区别及STL中的迭代器
函数模板与类模板有什么区别?答:函数模板的实例化是由编译程序在处理函数调用时自动完成的,而类模板的实例化必须由程序员在程序中显式地指定。即函数模板允许隐式调用和显式调用而类模板只能显示调用这期间有涉及到函数模板与模板函数,类模板与模板类的概念 (类似于类与类对象的区 别)请看下面例子注意:模板类的函数声明和实现必须都在头文件中完成,不能像普通类那样声明在.h文件中实原创 2013-05-01 12:49:29 · 2253 阅读 · 0 评论 -
Java集合
JAVA集合小结允许元素重复否有序否 Collection否是List是是SetAbstractSet否否HashSetTreeSet是(用二叉树排序)原创 2013-04-02 12:38:31 · 985 阅读 · 0 评论 -
C语言字符串操作函数
C语言字符串操作函数1. 写一个函数实现字符串反转版本1 - while版void strRev(char *s){ char temp, *end = s + strlen(s) - 1; while( end > s) { temp = *s; *s = *end; *end =原创 2013-04-03 12:59:20 · 1641 阅读 · 0 评论 -
Java的输入问题
Java中从键盘接收字符 2010-10-14 20:131 JDK 1.4 及以下版本读取的方法JDK 1.4 及以下的版本中要想从控制台中输入数据只有一种办法,即使用System.in获得系统的输入流,再桥接至字符流从字符流中读入数据。示例代码如下:import java.io.IOException;import java.io.InputStreamReader;pub原创 2013-04-02 12:42:46 · 1038 阅读 · 0 评论 -
MFC笔记
1、当点击关闭按钮时确定是否退出 CLoginDlg Dlg; int nRes=0; do { nRes=Dlg.DoModal(); //回到主界面 if(nRes==IDOK) return; //退出系统 if(nRes==IDCANCEL) { if(AfxMessageBox("您确定要退出系统吗?",MB_OKCAN原创 2013-04-02 12:23:06 · 1384 阅读 · 0 评论 -
Servlet生命周期与工作原理
Servlet生命周期分为三个阶段: 1,初始化阶段 调用init()方法 2,响应客户请求阶段(运行阶段) 调用service()方法 3,终止阶段 调用destroy()方法Servlet初始化阶段: 在下列时刻Servlet容器装载Servlet: 1,Servlet容器启动时自动装载某些Servlet,实现它只需要原创 2013-04-07 15:54:27 · 747 阅读 · 0 评论 -
C++字符串数字相互转换
C++字符串,数字相互转换一.将CString转为CTime的几种方法CString timestr = "2000年04月05日"; int a,b,c ; sscanf(timestr.GetBuffer(timestr.GetLength()),"%d年%d月%d日",&a,&b,&c); CTime time(a,b,c原创 2013-04-10 15:08:57 · 1553 阅读 · 0 评论 -
用C语言编写简单的病毒
[摘要]在分析病毒机理的基础上,用C语言写了一个小病毒作为实例,用TURBOC2.0实现. [Abstract] This paper introduce the charateristic of the computer virus,then show a simple example written by TURBOC2.0.一、什么是病毒 恶意软件可能原创 2013-04-10 15:14:15 · 2118 阅读 · 0 评论 -
标准C++中有四个类型转换符
关于强制类型转换的问题,很多书都讨论过,写的最详细的是C++ 之父的《C++的设计和演化》。最好的解决方法就是不要使用C风格的强制类型转换,而是使用标准C++的类型转换符:static_cast, dynamic_cast。标准C++中有四个类型转换符:static_cast、dynamic_cast、reinterpret_cast、和 const_cast。下面对它们一一进行介绍。 I原创 2013-04-11 12:08:21 · 1134 阅读 · 0 评论 -
JAVA三大框架SSH和MVC
Java—SSH(MVC)JAVA三大框架的各自作用 hibernate是底层基于jdbc的orm(对象关系映射)持久化框架,即:表与类的映射,字段与属性的映射,记录与对象的映射 数据库模型 也就是Model;struts提供的丰富标签是用于显示层View;同时struts也充当了实现Control的功能(不管是Struts1,还是Struts2),接收参数,视图分发。Sp原创 2013-04-07 16:08:42 · 2105 阅读 · 0 评论 -
如何在C/C++中动态分配二维数组
如何在C/C++中动态分配二维数组在C/C++中动态分配二维数组可以先申请一维的指针数组,然后该数组中的每个指针再申请数组,这样就相当于二维数组了,但是这种方法会导致每行可能不相邻,从而访问效率比较低。如何申请连续的二维数组了?本文将分别三个方面讲解:一.动态申请列大小固定的二维数组二.C语言中动态申请连续的二维数组三.C++语言中动态申请连续的二维数组转载 2013-04-22 12:25:36 · 1047 阅读 · 0 评论 -
面试时的那点事
算来毕业也将近两年了,从刚回写程序开始,面试过的公司是屈指可数,难说算坏算好啊。主席老人家说过要在战斗中壮大自己,看来我历练的还远远不够,不过在有限的斗争中,也总结了些许,与大家共勉之。 说来有些问题太过于tricky,如果过分沉浸在这些奇巧淫技里,反倒害了自己,不如把精力投入到更有效的地方。偏偏还能碰到有些人就喜欢追究这类问题,就像孔乙己一样因为知道回字的几种写法一样,而颇为洋洋得转载 2013-04-22 11:43:59 · 1094 阅读 · 1 评论 -
数据结构基本操作源代码
//三元组#include #include #define OK 1#define ERROR 0#define OVERFLOW -2typedef int Status;typedef int ElemType;typedef ElemType *Triplet;#include "h2.h"Status InitTriplet(Triplet&T,ElemType v1原创 2013-04-10 15:44:50 · 3773 阅读 · 0 评论 -
Socket编程
Socket编程,服务器和客服端的实现//服务端server.c#include #include #include #include #include #include #include #include #define SERVPORT 6000 /*服务器监听端口号 */#define BACKLOG 10 /* 最大同时连接请求数 */#define MAXD原创 2013-04-28 12:10:22 · 2028 阅读 · 0 评论 -
KMP算法详解及各种应用
KMP算法详解:KMP算法之所以叫做KMP算法是因为这个算法是由三个人共同提出来的,就取三个人名字的首字母作为该算法的名字。其实KMP算法与BF算法的区别就在于KMP算法巧妙的消除了指针i的回溯问题,只需确定下次匹配j的位置即可,使得问题的复杂度由O(mn)下降到O(m+n)。在KMP算法中,为了确定在匹配不成功时,下次匹配时j的位置,引入了next[]数组,next[j]的值表示P[0.转载 2013-04-29 22:09:42 · 1193 阅读 · 0 评论 -
C++中的static关键字
C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。一、面向过程设计中的static1、静态全局变量在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量。我们先举一个静态全局变量的例子,如下:[cpp] view转载 2013-04-29 10:32:03 · 1191 阅读 · 0 评论 -
算法的一些代码
1、插入排序简单插入#includevoid insort(int a[],int n){ int i,j; for(i=2;i<=n;i++) { j=i-1; a[0]=a[i]; while(a[0]<a[j]) { a[j+1]=a[j]; j原创 2013-04-03 12:56:43 · 2592 阅读 · 2 评论