我一直在努力解决 C++ 的家庭作业问题。
问题如下:
编写一条语句来执行以下每项任务。假设 num1 是一个浮点变量。还假设 ar1[100] 和 ar2[100] 是 char 类型的数组:
- 将 ptr 声明为指向 double 类型对象的指针
- 将变量 num1 的地址赋值给 ptr。
- 显示ptr指向的对象的值。
- 将ptr指向的对象的值赋给变量num1。
- 显示 num1 的地址。
- 将ar1中存储的字符串复制到ar2中。
我的问题是数字 2。问题是指针是 double 的,但变量 num1 是 float 。
我的另一个问题是,如果不使用 for 循环,我看不出如何完成 6。
到目前为止我得到了这个:
- double *ptr = new double;
- ptr = (double *) &num1;
- cout << *ptr;
- num1 = *ptr ;
- cout << &num1;
- //不知道
如果完成这会给我奇怪的值,但如果我将 num1 声明为 double 并将 2 更改为 ptr = &num1 一切正常。
请帮忙解决这个问题两天了。
最佳答案
double
和 float
都是浮点类型。所以如果你的老师说 num1 是一个“浮点类型”,你应该能够逃脱使用 double 。如果你的老师说要使用 float
,那你就卡住了。
6 要求您做一些非常具体的事情。这将涉及一些谷歌搜索,但它可以作为 1-liner 完成。
关于c++ - 单行指针操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4963652/