【ThinkingInC++】6、内存存放地址的地方

/**
* 功能:内存存放地址的地方
* 时间:2014年8月10日11:01:08
* 作者:cutter_point
*/

#include<iostream>

using namespace std;

//全局变量的存放地点
int dog, cat, bird, fish;

//函数存放内存地点
void f(int pet)
{
    cout<<"pet id number: "<<pet<<endl;
}

int main()
{
    int l, i, j, k;

    //依次输出地址位置
    cout<<"--------------------------------全局int----------------------------------"<<endl;
//    kk:
    cout<<"\n int dog:"<<(long)&dog
        <<"\n int cat:"<<(long)&cat
        <<"\n int bird:"<<(long)&bird
        <<"\n int fish:"<<(long)&fish<<endl;
    cout<<"--------------------------------函数----------------------------------"<<endl;
    cout<<"\n void f():"<<(long)&f<<endl;
//    goto kk;  这样果断死循环了
    cout<<"--------------------------------局部int----------------------------------"<<endl;
    cout<<"\n int i:"<<(long)&i
        <<"\n int j:"<<(long)&j
        <<"\n int k:"<<(long)&k<<endl;

//    cout<<"\n l:"<<(int)&l;

    return 0;
}

【ThinkingInC++】6、内存存放地址的地方

时间: 2024-08-29 13:35:01

【ThinkingInC++】6、内存存放地址的地方的相关文章

C语言 内存和地址

内存与地址 在介绍指针之前,先让我来讲一讲计算机内存与地址.计算机内存可以看作是一辆火车,我们知道火车有很多节车厢,每一节车厢都有车厢编号(坐过火车的人都知道),每一节车厢就可比喻为计算机的一块内存,车厢里面有座位号,通过座位号就可以唯一的确定一个座位,座位号就好在这一个内存块的偏移量,通过它可以唯一确定的数据存储的位置. 注意,内存中的每个位置由一个独一无二的地址标识,内存中的每个位置都包含一个值. 现在举例说明内存中数据存储,如下表,表中加粗边框部分表示内存中实际存储的数据,无边框部分表示内

Java内存存放区域与内存溢出异常(一)

**Java内存存放区域与内存溢出异常(一)** Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域,这些区域都有着各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则是依赖于用户进程的启动和结束而建立和销毁,java虚拟机所管理的内存将会包括以下几个运行时数据区域,如图一. 1.在这里先介绍程序计数器 程序计数器(Program Counter Register)是一块内存较小的内存空间,它的作用可以看作是当 前线程所执行的字节码的

2014-07-24 MSSQL数据库分离及获取存放地址

我们的系统,是支持同一台机器上安装多套的. 安装方法就是鼠标右键“复制”.“粘贴”(启动时会自动附加目录下的.mdf). 有的人安装多套以后,想要删除某一套的时候,为了省事儿就自作聪明的鼠标右键“删除”. 这样一来,MSSQL里的数据库就乱了,客户就会打电话过来囧. 我们一没实施,二没客服,就老程序员和我两个程序员...... 所以我要做一个清理数据库的小工具,处理被客户搞乱的数据库: 首先,通过数据库名称找出所有我们系统的数据库. 然后,遍历每个数据库,分成可以连接的和不可以连接的两种. 最后

[转]解读C指针(1)——内存与地址

原文地址:http://blog.csdn.net/czmpersist/article/details/9288203 计算机现在功能虽然强大,但究其实质是0与1的变换,循环往复,以至无穷,故能成其大.正如老子所说“一生二,二生三,三生万物”.“世界万物生于有,有生于无”.所以在学习计算机课程的过程中,要劳劳掌握基础知识,掌握根本,然后再去求变,才能以不变应万变,方为上策. 内存与地址 在介绍指针之前,先让我来讲一讲计算机内存与地址.计算机内存可以看作是一辆火车,我们知道火车有很多节车厢,每一

指针指向一块内存,它的内容是所指内存的地址;而引用则是某块内存的别名(转)

1.指针与引用的区别: 指针是一块内存的地址值,而引用是一块内存的别名. 下面引自:http://www.cnblogs.com/kingln/articles/1129114.html 从概念上讲.指针从本质上讲就是存放变量地址的一个变量,在逻辑上是独立的,它可以被改变,包括其所指向的地址的改变和其指向的地址中所存放的数据的改变. 而引用是一个别名,它在逻辑上不是独立的,它的存在具有依附性,所以引用必须在一开始就被初始化,而且其引用的对象在其整个生命周期中是不能被改变的(自始至终只能依附于同一

#pragma pack 定义变量的起始存放地址对齐方式

pack用来指定变量在内存中的存放起始地址对齐方式: 具体用法如下: 1 #pragma pack(push,n) // 保存当前系统设置的对齐方式,压入堆栈,然后设置当前对齐方式为n字节对齐,n通常取 1 2 4 8 2 3 ......... 4 5 #pragma pack(pop) // 恢复当前的对齐方式 pack对齐方式:选当前数据类型本身占用字节数与pack指定的对齐字节数两者之间的最小值, 用这个最小值的整数倍作为存放的起始地址. 例1: 1 #pragma pack(push,

xcode模拟器上进行屏幕快照的存放地址

1./Users/你的用户名/Library/Application Support/iPhone Simulator/模拟器版本号/Applications/Xcode所生成的某项目的编号/Library/Caches/Snapshots/项目名 2. /Users/你的用户名/Library/Application Support/iPhone Simulator/模拟器版本号/Library/Caches/Snapshots/iOS项目名 xcode模拟器上进行屏幕快照的存放地址

指针——内存和地址

刚刚看了篇博文: 北大硕士开米粉店,3个月后的最大收获与感悟是 里面的一些词,让我很触动,很有共鸣感, “书生式的无病呻吟”:确实,好像有很多时候觉得自己已经很苦逼了,可是看看那些在社会上用自己的双手为生计打拼的人,拿着国家津贴,父母的钱,却连最基本的学习都觉得苦,真是羞得无地自容啊! “理解和尊重”...不说废话了,下面记叙C语言的指针,一来知道指针是C语言的灵魂,二来,近来学习数据结构和算法,里面有很多指针的操作,理解还是有点困难呀! 1.计算机的内存由位(bit)组成,每个位可以容纳值0和

理解各种数据类型和简单类的内存存放.

基本数据类型.int ,char short. int a;a 标签代表一个地址的数据,里面的数据类型是int.所以占4个字节.a=3;给基本数据类型的标签赋直.就等于给标签代表的地址的数据赋直.a 标签既然代表一个地址的数据,那么它的地址用&a来获得.&a: 0x22ff1c: 03 00 00 00&(&a)会错误.因为&a并不是内存某个地方. 数组类型. int a[3]首先,a[0],a[1],a[2] 和基本数据类型一样理解.a[0] 标签代表一个地址的数