首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >基础数据类型程序

基础数据类型程序
EN

Stack Overflow用户
提问于 2014-06-22 07:37:35
回答 1查看 156关注 0票数 0

我写了以下代码:

代码语言:javascript
运行
复制
#include <iostream>
#include <iomanip>

using namespace std;

int main(){

    char c;
    int i;
    short int j;
    long int k;
    float f;
    double d;
    long double e;

    cout << "The size of char is: " << sizeof c << endl;
    cout << "The size of int is: " << sizeof i << endl;
    cout << "The size of short int is: " << sizeof j << endl;
    cout << "The size of long int is: " << sizeof k << endl;
    cout << "The size of float is: " << sizeof f << endl;
    cout << "The size of double is: " << sizeof d << endl;
    cout << "The size of long double is: " << sizeof e << endl;

    system("pause");
    return 0;
}

这个程序的目的是打印出基本数据类型的大小,我想我已经完成了。此程序的另一个目的是将指针的大小打印到这些数据类型中的每一个。我很难搞清楚该怎么做。我知道指针是一个变量,它存储另一个变量的地址,并且指针涉及到尊重运算符(*)。有没有人能提个建议?我不是在寻找答案,只是在正确的方向上推动。

EN

回答 1

Stack Overflow用户

发布于 2014-06-22 07:45:32

代码语言:javascript
运行
复制
int *p; // p is a pointer to an int

因此指针的大小为:sizeof p,您可以将其打印为:

代码语言:javascript
运行
复制
cout << "The size of int pointer is: " << sizeof p << endl;

这就是你需要做的,打印其他指针的大小。

仅当您想要访问指针所指向的内容时,才会执行取消引用。例如。

代码语言:javascript
运行
复制
int i = 5;
int *p = &i;

*p = 6;
*p = *p + 1; 
//etc

在这里,您只需要获取指针的大小。因此不需要取消引用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24346809

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档