- 博客(81)
- 资源 (10)
- 收藏
- 关注
原创 复制构造函数和类的组合
复制构造函数的作用:使用一个已经存在的对象(由复制构造函数的参数指定),去初始化同类的一个新对象。如果系统没有复制构造函数,系统会自动生成一个隐含的复制构造函数。例:#include using namespace std;class Point{public:Point(int xx=0,int yy=0){x=xx;y=yy;}Point(Point &
2012-08-31 20:33:46 1964
原创 指针与引用
一个数据对象的内存地址称为该数据对象的指针。指针与引用的区别:1、非空区别。在任何情况下都不能使用指向空值的引用,一个引用必须总是指向某些对象,而指针可以指向空值。不存在指向空值的引用这个事实意味着使用引用的代码效率比指针高。2、合法性区别。在使用引用之前不需要测试它的合法性。相反,指针则应该总是被测试,以防止其为空。3、可修改区别。指针可以被重新赋值以指向另一个不同的对象,而引用
2012-08-31 17:04:22 780
原创 C\C++语言基础细节(一)
全局变量本身就是静态存储方式,把局部变量改变为静态变量后是改变了它的存储方式即改变了它的生存期,把全局变量改变为静态变量后是改变了它的作用域,限制了它的使用范围。在不同的C文件中以static形式来声明同名全局变量。可以在不同的C文件中声明同名的全局变量,前提是其中只能有一个C文件中对此变量赋初值,此时连接不会出错static局部变量和普通局部变量有什么区别:static局部变量只被初
2012-08-31 15:13:20 1162
转载 关于函数返回值的几种情况
转自:http://patmusing.blog.163.com/blog/static/13583496020113191407531/在一个函数的内部,return的时候返回的都是一个拷贝,不管是变量、对象还是指针都是返回拷贝,但是这个拷贝是浅拷贝。 不是不能返回局部变量,是不能返回指向局部变量的指针和引用。1. 如果返回一个基本类型的变量,比如:i
2012-08-29 20:36:01 847
原创 D:\vcfile\4.c(6) : warning C4172: returning address of local variable or temporary
返回了局部或临时变量不是不能返回局部变量,是不能返回指向局部变量的指针和引用。
2012-08-29 16:50:33 4710
转载 写一函数int fun(char *p)判断一字符串是否为回文,是返回1,不是返回0,出错返回-1
#include int fun(char *p) { if(p==NULL) return -1; else { int length = 0; int i = 0; int judge = 1; length = strlen(p); for(i=0; i <length/2; i++) { if(p[i]!=p[length-1-
2012-08-29 15:44:30 14865 1
原创 int strcmp(char *source, char *dest)函数
#include int strcmp_test(char*source, char *dest) { while ( (*source != '\0') &&(*source == *dest)) { source++; dest++; } return ( (*source) - (*dest) ) ? -1 : 0; }void main()
2012-08-29 14:28:20 2312
转载 C/C++程序员应聘常见面试题剖析
1.引言本文的写作目的并不在于提供C/C++程序员求职面试指导,而旨在从技术上分析面试题的内涵。文中的大多数面试题来自各大论坛,部分试题解答也参考了网友的意见。许多面试题看似简单,却需要深厚的基本功才能给出完美的解答。企业要求面试者写一个最简单的strcpy 函数都可看出面试者在技术上究竟达到了怎样的程度,我们能真正写好一个strcpy 函数吗?我们都觉得自己能,可是我们写出的
2012-08-29 13:08:28 1774
原创 字符串的倒序排列
#include #include "string.h"#include int main(){ char *src="Hello World"; int len=strlen(src); char *dest=(char *)malloc((len+1)*sizeof(char)); char *d=dest; char *s=&src[len-1]; wh
2012-08-27 13:45:32 2527
转载 union 共用体 联合体
共用体表示几个变量共用一个内存位置,在不同的时间保存不同的数据类型和不同长度的变量。在union中,所有的共用体成员共用一个空间,并且同一时间只能储存其中一个成员变量的值。1. 共用体声明和共用体变量定义其形式为: union 共用体名{ 数据类型 成员名; 数据类型 成员名; ... } 变量名;下例表示声明一个共用体foo: union foo{
2012-08-27 09:29:49 3848 3
转载 5分钟搞定内存字节对齐
怎么判断内存对齐规则,sizeof的结果怎么来的,请牢记以下3条原则:(在没有#pragma pack宏的情况下,务必看完最后一行) 1:数据成员对齐规则:结构(struct)(或联合(union))的数据成员,第一个数据成员放在offset为0的地方,以后每个数据成员存储的起始位置要从该成员大小或者成员的子成员大小(只要该成员有子成员,比如说是数组,结构体等)的整数倍开始(比如i
2012-08-26 20:03:32 1001
原创 枚举类型 enum
如同结构和联合一样,枚举变量也可用不同的方式说明,即先定义后说明,同时定义说明或直接说明。 设有变量a,b,c被说明为上述的weekday,可采用下述任一种方式: enum weekday{ sun,mon,tue,wed,thu,fri,sat }; enum weekday a,b,c; 或者为: enum weekday{ sun,mon,tue,wed,thu,fri,sat }
2012-08-26 09:47:33 4046
转载 用内联取代宏代码
8.5.1 用内联取代宏代码 C++ 语言支持函数内联,其目的是为了提高函数的执行效率(速度)。 在C程序中,可以用宏代码提高执行效率。宏代码本身不是函数,但使用起来象函数。预处理器用复制宏代码的方式代替函数调用,省去了参数压栈、生成汇编语言的CALL调用、返回参数、执行return等过程,从而提高了速度。使用宏代码最大的缺点是容易出错,预处理器在复制宏代码时常常产生意想不到的边际效应。例
2012-08-25 21:23:42 938
原创 宏定义的函数在程序中的调用
#include #define Min(X,Y) ((X)>(Y)?(Y):(X))这个宏在程序中怎么调用?它是有返回值的
2012-08-25 21:08:14 2193
原创 全局变量在函数中改变
字符串中的字母变成大写:#include void uppercase(char *str){char* str_temp=str;while(*str_temp!='\0'){if((*str_temp>='a')&&(*str_temp<='z'))*str_temp-=('a'-'A');str_temp++;}}int main(){//char *str1
2012-08-25 20:46:48 4789
转载 逐个字符读字符串
因为 scanf 函数和 gets 函数都有风险且不够灵活,C 程序员经常会编写自己的输入函数。通过每次一个字符的方式来读入字符串。下面是自己编写的读取字符串的函数 read_line():int read_line(char strp[], int n){ char ch; int i = 0; while((ch = getchar()) != '\n')
2012-08-25 20:28:29 3151
转载 C语言宏定义方法总结
宏的单行定义 #define A(x) T_##x #define B(x) #@x #define C(x) #x 我们假设:x=1,则有: A(1)------〉T_1 B(1)------〉 '1 ' C(1)------〉 "1 " .如何定义宏、取消宏 //定义宏 #define [Macro
2012-08-25 16:56:35 20447
转载 TRACE宏 ASSERT宏 VERIFY 宏
一、TRACE宏 当选择了Debug目标,并且afxTraceEnabled变量被置为TRUE时,TRACE宏也就随之被激活了。但在程序的Release版本中,它们是被完全禁止的。下面是一个典型的TRACE语句: … int nCount =9 ; CStringstrDesc("total" ); TRACE("
2012-08-25 16:55:27 2110
转载 NDEBUG
头文件assert.h定义的宏受NDEBUG的影响.如果预程序在处理这个头文件时已经定义了NDEBUG,assert宏的内容就定义为空,这意味着assert宏不在起作用.所以,可以在最终发布程序的时候可以使用-DNDEBUG关闭断言功能或者把#define NDEBUG加到每个源文件中,但这条语句必须放在#include 之前.#include #define NDEBUG/
2012-08-25 16:27:52 9478 2
原创 字符串拷贝
char * strcpy (char *strDest,const char *strSrc){ assert ((strDest!=NULL)&&(srtrSrc!=NULL)); char *strDestCopy=strDest; while ((*strDest++=*strSrc++)!='\0'); return s
2012-08-25 11:46:44 795
原创 C语言头文件避免重复包含
假定有以下几个头文件及其包含关系为: 假定有以下几个头文件及其包含关系为: File1.h,file2.h,file3.h,file4.h,file5.h,main.c 那么:file3.h包含file1.h,file2.h,file4.h包含file1.h,file2.h,file5.h包含file3.h,file4.h。如许就会导致在file5中对file
2012-08-24 11:43:19 2659
原创 硬件电路基本知识
Vss:地或电源负极Vdd,Vss在MOS电路中出现,和漏级(Drain),源极(Source)有关,也是一正一负。 VDD:D=device 表示器件的意思, 即器件内部的工作电压; VSS:S=series 表示公共连接的意思,通常指电路公共接地端电压; VEE:E=electron 表示构成物质的基本粒子之一,因带负电,也写作e,通常指负
2012-08-22 11:52:15 4419
转载 ubuntu下安装lamp环境最简单的方法
大家可能在招聘上看到很多公司要求熟悉lamp环境,但是lamp环境是个如何搭建呢?当你在搜索引擎中搜这个问题的时候,给出的答案确可能让你这个对 linux命令不大熟悉的人搞的一头雾水,大量复杂的命令(你可能还不知道这是什么意思),繁琐的步骤,可能由于版本的问题而配置失败,而且你也不知道这 个时候系统处于什么样地状态,也不知到如何重做,这个问题可能会把你赶回到windows下的wamp环境下,让你永
2012-08-22 11:15:37 1157
原创 人生大道理
1.现在流的汗必是你以前脑子进的水2.坚持的力量3.机会是留给有准备的人的,一个人最悲哀的是机会来了自己却没能力4.凡事没有早晚,不要延迟。5.一个男人有两部分组成:能力 责任6.Stay Hungrey ,Stay Foolish.职位描述:1、本科毕业4年、硕士3年以上,计算机、通信、微电子、电子、自动控制、电气工程类等相关专业毕业,博士优先;
2012-08-22 08:42:54 849
原创 开关电源
电源常用的连接方式:1.串联线性电源2.高频开关电源•串联线性电源:–电源调整管工作在放大状态;–效率低,损耗大,温升高。•开关电源:–电源调整管工作在开关状态的电源;–具有高功率密度、重量轻、体积小。 电源调整管:调整管主要实现线性电源的输出稳压;调整管可以是
2012-08-21 15:15:20 1321
转载 Proteus20个应用技巧
Proteus20个应用技巧,是众多Proteus忠实fans在自己的实际应用操作过程中总结出来的,所以实用性非常强!今天我把它们一一整理出来与大家分享,如果还有更好的使用技巧,欢迎大家都来分享!!F8:全部显示 当前工作区全部显示。F6:放大 以鼠标为中心放大。F7:缩小 以鼠标为中心缩小。ISIS支持的文件: 1.design files(.DSN)包含电路所
2012-08-17 20:49:25 22549 1
转载 ubuntu做主机双网卡共享上网方法
一、网络拓补结构: (注:如果是无线网卡连接内网,eth0改为wlan0,不清楚自己的网卡是哪个用命令ifconfig -a 查询)服务器:两网卡的设置:eth0:202.96.168.100 掩码:255.255.255.0 网关:202.96.168.68 #与 Inte.Net 相联eth1:192.168.1.1 掩码:255.255.255.0 #与局域网相联客户机子网段
2012-08-17 16:20:42 7769
转载 网络基础
网关与默认网关:大家都知道,从一个房间走到另一个房间,必然要经过一扇门。同样,从一个网络向另一个网络发送信 网关息,也必须经过一道“关口”,这道关口就是网关。顾名思义,网关(Gateway)就是一个网络连接到另一个网络的“关口”。也就是网络关卡。那么网关到底是什么呢?网关实质上是一个网络通向其他网络的IP地址。比如有网络A和网络B,网络A的IP地址范围为“19
2012-08-17 16:09:09 867
转载 modprobe与insmod的使用
insmod 与 modprobe 都是载入 kernel module,不过一般差别于 modprobe 能够处理 module 载入的相依问题。 比方你要载入 a module,但是 a module 要求系统先载入 b module 时,直接用 insmod 挂入通常都会出现错误讯息,不过 modprobe 倒是能够知道先载入 b module 后才载入 a module,如此相依性就会
2012-08-17 10:19:45 1912
转载 ubuntu iptables设置
root@qustdjx-K42JZ:/home/qustdjx# iptables -L -nChain INPUT (policy ACCEPT)target prot opt source destination Chain FORWARD (policy ACCEPT)target prot opt sourc
2012-08-17 09:35:33 66201
转载 ubuntu如何查看MAC地址
ubuntu如何查看MAC地址?ubuntu 查看mac地址可使用以下四种不同的命令,大家可根据自己的实际需要进行选择使用:ifconfig | awk '/eth/{print $1,$5}'arp -a | awk '{print $4}sudo lshw -C networksudo lshw -c network | grep serial
2012-08-16 17:53:41 40840 1
转载 ubuntu双网卡共享上网
学校使用锐捷2.56认证,固定IP。本机双网卡,eth0连接外网。eth1内网接路由。使用mystar代替锐捷2.56。1、IP的设置:sudo gedit /etc/network/interfaces内容如下:auto loiface lo inet loopbackiface eth0 inet staticaddress 192.168.2.15
2012-08-16 17:46:53 4147
转载 ubuntu建立无线热点与windows、手机等共享有线网络
1.什么是热点?这里只是指把ubuntu当作一个无线路由的意思,也就是用共享有线连接的网络来实现无线网络分享,让其它用win7(也可以是其它的无线设备,比如我的魅族M8手机)来上网2.ubuntu的版本要求只有10.04和以上的版本测试3.什么的有线网络基本没有限制,包括锐捷认证的校园网络和宽带网络等~4.设置方法单击ubuntu的netwo
2012-08-16 17:24:45 2244
转载 制作nat主机,为组建的子网提供一个网关
方法来自鸟哥的书:首先贴出我的目的,用我的无线上网卡作为连接上internet的端口,然后设置防火墙,开启linux的封包转发功能:#!/bin/bash#made by vbird# 请先输入您的相关参数,不要输入错误了!EXTIF="ppp0" # 这个是可以连上 Public IP 的网路介面INIF="eth0" #
2012-08-16 16:52:21 1037
转载 vb API的调用
VB 的程式设计模式是以物件为核心, 但 Windows 的程式设计模式却是以 handle 为核心。Microsoft Windows 操作环境通过分配句柄(即 hWnd)来标识应用程序中的每个窗体和控件。hWnd 属性用于 Windows API 调用。许多 Windows 操作环境函数要求活动窗口的 hWnd 作为参数。hWnd 属性(ActiveX 控件)返回窗体或控件的句柄。
2012-08-16 10:03:20 1105
原创 ubuntu 11.10 下将qwt导入Qt creator中
【QWT简介】 QWT[1],全称是Qt Widgets for Technical Applications,是一个基于LGPL版权协议的开源项目, 可生成各种统计图。它为具有技术专业背景的程序提供GUI组件和一组实用类,其目标是以基于2D方式的窗体部件来显示数据, 数据源以数值,数组或一组浮点数等方式提供, 输出方式可以是Curves(曲线),Slider(滚动条),Dials(圆盘),
2012-08-15 14:35:52 2768 3
原创 vb 中ImageList 控件的安装
我的这个vb版本,事先是没有ImageList 控件的,但是可增加。 ImageList 控件是 ActiveX 控件组的一部分,该控件组可以在文件 MSCOMCTL.OCX ,你可以去网上下一个MSCOMCTL.OCX,这里是(在我的资源中)我在网上下在载的,并且里面含有注册程序,将这个压缩包解压缩后,里面有个注册程序,双击即可。后来里面的MSCOMCTL.OCX
2012-08-14 13:16:42 7703
转载 Visual Basic的循环结构
来自:vb神童教程循环结构 循环结构允许重复执行一行或数行代码。Visual Basic 支持的循环结构有: 1.Do...Loop 2.For...Next 3.For Each...Next对象的创建: .首先声明变量: Dim variable As class 然后把对象赋予变量:
2012-08-12 10:02:26 2565
转载 Visual Basic变量、常数和数据类型及过程概述
来自:VB 神通教程声明变量:声明变量就是事先将变量通知程序。要用 Dim 语句声明变量,Dim 语句提供了变量名: Dim variablename [As type] 在过程内部用 Dim 语句声明的变量,只有在该过程执行时才存在。过程一结束,该变量的值也就消失了。此外,过程中的变量值对过程来说是局部的,也就是说,无法在一个过程中访问另一个过程中的变量。由于这些特点
2012-08-11 12:01:56 5733
转载 vb 细节要点
摘自:VB 神童教程A$ = Lst1.List(2)其中,A 是一个变量;$ 指明了这个变量的类型:字符串型;X% = Lst1.ListCount ,其中,X 是变量,% 表示X是整数类型的变量。A$ = Lst1.List(Lst1.ListIndex) 此时,Lst1.ListIndex 等同于 2 。Visual Basic 应用程序的结构:应用程序中的每个窗
2012-08-11 09:26:25 777
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人