c++的指针和取地址求普及(详细)

c++的指针和取地址求普及(详细),第1张

/使指针指向现有的内存 /

int x = 1;

int p = &x;// 指针 p 被初始化,指向变量 x ,其中取地址符 & 用于产生 *** 作数内存地址

/ 方法2:动态分配内存给指针 /

int p;

p = (int )malloc(sizeof(int) 10);

// malloc 函数用于动态分配内存

free(p);

yprt是指针,yprt是计算机存储某个数据的地址,加上表示指向这个地址存储的数据

若地址yprt里存储的是y,&是单目运算符,符合右结合法则,所以先是运算yprt,它的值是y,

然后再&y,它的运算结果是得出存储y的地址,就是yprt。

不懂继续问

望采纳

在调用getline之前,先调用tellg()得到当前位置,然后getline(),需要返回的时候调用seekg()。 代码如下: #include #include #include using namespace std; void main() { string s; char ch[500000]; ofstream ob1("abtxt"); ifstream ifs("e

1既然楼主定义的指针变量a为指向结构体BBB的指针,那么tmp->a 当然是指向结构体BBB的指针啦

2比如;

定义另一个BBB b;

tmp->a=b;

这样不就赋值了嘛!!!

我把楼主提到的问题用代码写出啦,楼主自己看看!!!

举例如下:

#include <iostreamh>

#include<iomaniph>

#include<stdioh>

struct BBB

{

int m;

int n;

};

typedef struct _AAA

{

BBB  a;

int x;

int y;

}AAA;

void main()

{

AAA tmp;

tmp=new AAA;

BBB b;

b=new BBB;

cout<<"请输入m n"<<endl;

cin>>b->m>>b->n;

cout<<"结构体指针变量b中的m和n:";

cout<<"m="<<b->m<<",n=" <<b->n<<endl;

tmp->a=b;

cout<<"结构体指针变量a中的m和n:";

cout<<"m="<<tmp->a ->m <<",n="<<tmp->a->n<<endl;

cout<<"修改指针变量a中的值,重新输入m n "<<endl;

cin>>tmp->a->m >>tmp->a->n ;

cout<<"修改数据如下:";

cout<<"m="<<tmp->a ->m <<",n="<<tmp->a->n<<endl;

cout<<"结构体指针变量b中的m和n:";

cout<<"m="<<b->m<<",n=" <<b->n<<endl;

}

单维数组名就是首地址,多维数组名就是第1维的首地址,因此取首地址,可以把数组名赋给对应的指针变量,或取索引为0的首个元素地址赋给对应的指针变量。举例:

单维

int

arr[10];

int

p

=arr;

int

p

=&arr[0];

二维

int

arr[10][10];

int

(p)[10]

=arr;

或int

(p)[10]

=

&arr[0];//

取第一维地址

int

arr[10][10];

int

p=

&

arr[0][0];

//

取多维中的首个元素

以上就是关于c++的指针和取地址求普及(详细)全部的内容,包括:c++的指针和取地址求普及(详细)、C语言指针,&*怎么得到地址的、c++中怎样读取文件中的指针地址等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9572178.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存