
计算机基础知识
文章平均质量分 59
wolenski
这个作者很懒,什么都没留下…
展开
-
C&C++中联合体(union)的使用
试题一:编写一段程序判断系统中的CPU是Little endian还是Big endian模式?分析:作为一个计算机相关专业的人,我们应该在计算机组成中都学习过什么叫Little endian和Big endian。Little endian和Big endian是CPU存放数据的两种不同顺序。对于整型、长整型等数据类型,Big endian认为第一个字节是最高位字节(按照从低地址到高地址转载 2012-08-29 22:11:23 · 2751 阅读 · 0 评论 -
腾讯电面
刚才接到腾讯电面,主要问了一下几个问题:有没有搞过linux开发没搞过,跳过。new 和malloc的区别1)new 返回指定类型的指针,并且可以自动计算所需要大小。比如: int *p; p = new int; //返回类型为int* 类型(整数型指针),分配大小为 sizeof(int); 或: int* parr; parr原创 2012-09-04 16:17:53 · 2401 阅读 · 0 评论 -
综合知识问答题
HTTP中Get和Post的区别Get和Post都是浏览器向网页服务器提交数据的方法。 Get把要提交的数据编码在url中,比如 http://hi.baidu.com/mianshiti?key1=value1&key2=value2 中就编码了键值对 key1,value1 和key2,value2。受限于url的长度限制,Get方法能传输的数据有限(不同浏览器对url长度限制转载 2012-08-25 20:23:14 · 796 阅读 · 0 评论 -
堆和栈的区别(内存和数据结构)
在计算机领域,堆栈是一个不容忽视的概念,我们编写的C语言程序基本上都要用到。但对于很多的初学着来说,堆栈是一个很模糊的概念。堆栈:一种数据结构、一个在程序运行时用于存放的地方,这可能是很多初学者的认识,因为我曾经就是这么想的和汇编语言中的堆栈一词混为一谈。我身边的一些编程的朋友以及在网上看帖遇到的朋友中有好多也说不清堆栈,所以我想有必要给大家分享一下我对堆栈的看法,有说的不对的地方请朋友们不吝赐教转载 2012-09-06 17:53:42 · 31181 阅读 · 7 评论 -
数据库事务四大特性
数据库事务是指作为单个逻辑工作单元执行的一系列操作,这些操作要么全做要么全不做,是一个不可分割的工作单位。数据库事务的四大特性(简称ACID)是:(1) 原子性(Atomicity)事务的原子性指的是,事务中包含的程序作为数据库的逻辑工作单位,它所做的对数据修改操作要么全部执行,要么完全不执行。这种特性称为原子性。例如银行取款事务分为2个步骤(1)存折减款(2)提取现金。不原创 2012-09-14 20:16:27 · 44498 阅读 · 1 评论 -
SQL常用命令实例详解
SQL是Structured Quevy Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。一.建一个新的数据库例:creat database转载 2012-09-14 20:20:21 · 2103 阅读 · 0 评论 -
运算符的执行顺序
运行下图中的C++代码,打印出的结果是什么?bool Fun1(char* str) { printf("%s\n", str); return false; } bool Fun2(char* str) { printf("%s\n", str); return true; } int _tmain(int argc, _转载 2012-08-22 23:09:03 · 1418 阅读 · 0 评论 -
TCP协议三次握手四次挥手过程分析
TCP(Transmission Control Protocol) 传输控制协议TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish结束) RST(reset重置) URG(urgent紧急转载 2012-09-02 14:59:59 · 655 阅读 · 0 评论 -
C++ Static用法
1、什么是static? static 是C++中很常用的修饰符,它被用来控制变量的存储方式和可见性。 2、为什么要引入static? 函数内部定义的变量,在程序执行到它的定义处时,编译器为它在栈上分配空间,大家知道,函数在栈上分配的空间在此函数执行结束时会释放掉,这样就产生了一 个问题: 如果想将函数中此变量的值保存至下一次调用时,如何实现? 最容易想到转载 2012-09-05 16:26:15 · 583 阅读 · 0 评论 -
STL 迭代器
中定义了迭代器得使用方法,主要得模版类有:插入迭代器插入迭代器是一种迭代器适配器,带有一个容器参数,并生成一个迭代器,用于在指定的容器中插入元素。通过插入迭代器赋值时,迭代器将会插入一个新的元素。C++语言提供了三种插入器,其差别在于插入元素的位置不同:back_inserter,创建使用push_back实现插入的迭代器,其使用一个对象作为实参将一个新元素插入到容器得后端fron转载 2012-09-04 14:46:34 · 592 阅读 · 0 评论 -
进程与线程的区别联系
线程和进程的区别 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位.线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源.一个线程可转载 2012-09-02 15:29:58 · 672 阅读 · 0 评论 -
int long 字节数
上次腾讯面试,问我int和long分别几个字节,结果被鄙视了。事过N天,鼓起勇气来好好查了一下,发现学问还是蛮大的。int类型比较特殊,具体的字节数同机器字长和编译器有关。如果要保证移植性,尽量用__int16 __int32 __int64吧,或者自己typedef int INT32一下。C、C++标准中只规定了某种类型的最小字节数(防止溢出)64位指的是cpu通用寄存器的数据转载 2012-09-04 14:12:00 · 884 阅读 · 0 评论 -
C++题目汇总
问题(1):运行如下的C++代码,输出是什么?class A { public: virtual void Fun(int number = 10) { std::cout << "A::Fun with number " << number; } }; class B: public A { public: virtua转载 2012-08-23 10:34:35 · 620 阅读 · 0 评论 -
C++ 虚函数,虚函数表
C++ 虚函数表解析 陈皓http://blog.youkuaiyun.com/haoel前言C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型转载 2012-08-31 15:33:41 · 629 阅读 · 0 评论 -
c中malloc realloc calloc 的区别和联系
ANSI C说明了三个用于存储空间动态分配的函数(1) malloc 分配指定字节数的存储区。此存储区中的初始值不确定(2) calloc 为指定长度的对象,分配能容纳其指定个数的存储空间。该空间中的每一位(bit)都初始化为0(3) realloc 更改以前分配区的长度(增加或减少)。当增加长度时,可能需将以前分配区的内容移到另一个足够大的区域,而新增区域内的初始值则不确定.转载 2012-08-31 16:04:12 · 879 阅读 · 0 评论 -
BSS段/DATA段/CODE段
转自http://blog.youkuaiyun.com/ljzcom/article/details/7254872BSS段:BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域。 BSS是英文Block Started by Symbol的简称。BSS段属于静态内存分配。 数据段:数据段(data segm转载 2012-08-31 16:58:58 · 2153 阅读 · 0 评论 -
堆和栈的区别
转自http://blog.youkuaiyun.com/hairetz/article/details/4141043一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 :1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放转载 2012-08-31 16:54:51 · 651 阅读 · 0 评论 -
typedef和define具体的详细区别
转自http://blog.youkuaiyun.com/21aspnet/article/details/67239151) #define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查,不关含义是否正确照样带入,只有在编译已被展开的源程序时才会发现可能的错误并报错。例如:#define PI 3.1415926程序中的:area=PI*r*r 会替换为3.1415926*r转载 2012-08-31 19:20:25 · 688 阅读 · 0 评论 -
内存管理-内存池技术
转自http://www.cnblogs.com/dwdxdy/archive/2012/06/05/2537431.html内存池是种用于分配大量大小相同的小块内存的技术,可以极大加快内存分配/释放过程.MemPool技术的内存分配,释放速度非常快,达到O(1)级别.缺点:1).只能分配特定字节长度的内存,也就是说,MemPool不是通用内存管理器.2).MemPoo转载 2012-08-31 20:02:37 · 817 阅读 · 0 评论 -
大端小端(Big- Endian和Little-Endian)
在各种计算机体系结构中,对于字节、字等的存储机制有所不同,因而引发了计算机通信领 域中一个很重要的问题,即通信双方交流的信息单元(比特、字节、字、双字等等)应该以什么样的顺序进行传送。如果不达成一致的规则,通信双方将无法进行正 确的编/译码从而导致通信失败。目前在各种体系的计算机中通常采用的字节存储机制主要有两种:Big-Endian和Little-Endian,下面先 从字节序说起。 一转载 2012-08-22 19:53:28 · 565 阅读 · 0 评论 -
scanf和printf
大一下学期遇到的问题,现在想起来把他搞明白………………--------------------------------------------------------------------------------------------------------------------------------这个是中定义的scanf:_CRTIMP int __cdecl __MING转载 2012-08-23 20:20:10 · 4797 阅读 · 0 评论 -
把字符串转换成整数
题目:输入一个表示整数的字符串,把该字符串转换成整数并输出。例如输入字符串"345",则输出整数345。分析:这道题尽管不是很难,学过C/C++语言一般都能实现基本功能,但不同程序员就这道题写出的代码有很大区别,可以说这道题能够很好地反应出程序员的思维和编程习惯,因此已经被包括微软在内的多家公司用作面试题。建议读者在往下看之前自己先编写代码,再比较自己写的代码和下面的参考代码有哪些不同。首转载 2012-08-23 20:08:55 · 538 阅读 · 0 评论 -
操作系统面试题
1、进程和线程有什么区别? 进程间是独立,这体现在内存空间,上下文环境上,线程运行在进程空间内; 一般而言(不使用特殊技术),进程无法突破进程边界存取其他进程内的存储空间,而线程由于处于进程空间内,所以同一进程所产生的线程共享同一内存空间; 同一进程中的两段代码不能够同时执行,除非引入线程; 线程是属于进程的,当进程退出时该进程所产生的线程都会被强制退出并清除。线程转载 2012-09-02 15:19:39 · 1224 阅读 · 0 评论 -
图解SQL的各种连接join
对于SQL的Join,在学习起来可能是比较乱的。我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚。Coding Horror上有一篇文章(实在不清楚为什么Coding Horror也被墙)通过 文氏图 Venn diagrams解释了SQL的Join。我觉得清楚易懂,转过来。假设我们有两张表,Table转载 2012-09-14 20:48:38 · 1415 阅读 · 0 评论