谈C/C++指针精髓(一,二,三)
[
摘要]
指针是
C和
C++语言编程中最重要的概念之一,也是最容易产生困惑并导致程序出错的问题之一。利用指针编程可以表示各种数据结构
, 通过指针可使用主调函数和被调函数之间共享变量或数据结构,便于实现双向数据通讯;并能像汇编语言一样处理内存地址,从而编出精练而高效的程序。指针极大地丰富了C和
C++语言的功能。
在本文中,主要分两部分对指针进行讨论。首先,基础篇讨论关于指针的内容和运算操作等,可以是读者对指针的知识有一定了解和认识;随后在使用篇中重点讨论指针的各种应用,揭破指针在日常编程中的精髓,从而使读者能够真正地了解、认识和使用指针。
[
关键字
]
C C++ 指针
引用
数组
结构体
类
第一篇
:
基础篇
1.1
指针的概念
谈到指针
,它的灵活性和难控制性让许多程序员谈虎色变
;但它的直接操作内存,在数据
操作方面有着速度快,节约内存等优点,又使许多
C++程序员的深爱不以
.那么指针究竟是怎么样一个概念呢
?
其实
, 指针就是一类变量,是一类包含了其他变量或函数的地址的变量。与其他变量所不同的是,一般的变量包含的是实际的真实的数据
,而指针是一个指示器,它告诉程序在内存的哪块区域可以找到数据。
好了
,在这里我们可以这样定义指针
:指针是一类包含了其他变量或函数的地址的变量
,它里面存储的数值被解释成为内存的地址
.
1.2
指针的内容
简单讲
,指针有四个方面的内容
:即指针的类型
,指针所指向的类型
,指针的值
,指针本身所
占有的内存区
.下面我们将分别阐述这些内容
.
1.2.1
指针的类型
从语法的角度看,指针的类型是指把指针声明语句中的指针名字去掉所剩下的部分。这是指针本身所具有的类型。例如:
int*ip; //
指针的类型是
int*
char*ip; //
指针的类型是
char*
int**ip; //
指针的类型是
int**
int(*ip)[5]; //
指针的类型是
int(*)[5]
1.2.2
指针所指向的类型
当你通过指针来访问指针所指向的内存区时,指针所指向的类型决定了编译器将把那片内存区里的内容当做什么类型来看待。从语法的角度看,指针所指向的类型是指针声明语句中的指针名
相关文档:
最强的GUI库当属Qt,毕竟是商业化的东西,功能最完整,什么都好,包括类似java代码风格,良好的框架设计,但有几点值的一提:
1.它没有使用STL,而是自己实现了一套替代方案QTL;
2.事件模型使用自创的signal/slot机制,所以需要moc.exe来预处理头文件;
&nbs ......
在Perl的各种文件测试运算符中,最有用的运算符之一就是 -C 了。
它返回的是文件的ctime到程序启动的那一时刻经过的天数。
如果不是整数天,返回值就带有小数。
这个运算符经常用来检测文件是否过期,比如判断文件距离上次修改是否超过了3天,
如果超过就将其删除。但是,你是否真正理解 -C 的工作原理呢?
何谓ctime
......
问:
确认一下c++中不能使用interface(如java)那样的功能把
我认为是不能的,注意我说的是interface(用于java多重继承的那个,不是一般意义的接口)
我觉得是没有的,但是网上搜索说什么的都有而且人还不少…… 所以希望大家能给我一个明确的答复好么?最好能还有一� ......
给我们上ASP.NET的老师在讲解C#的时候,总是要询问我们C#和C/C++间的不同之处,或者一些细节问题,但是平时不怎么注意,还真把我们给问到了!!
一.不经过中间变量怎样交换两个数据 int a=25;b=10;
解法: a=a+b;//35
b=a-b;//25
......
C 语言
C语言是一种计算机语言,简单的讲它是我们和计算机沟通的一种工具,通过这种语言我们可以引导计算机让它按照我们的意愿去做事,来为人类提供服务。比如你电脑中的音乐播放器、word、qq、迅雷(当然这些软件的编写还应用了且他工具)。
C语言可以作为工作系统设计语言,编写系统应用程序,也可以作� ......