c++ - 单行指针操作

标签 c++ pointers floating-point type-conversion

我一直在努力解决 C++ 的家庭作业问题。

问题如下:

编写一条语句来执行以下每项任务。假设 num1 是一个浮点变量。还假设 ar1[100] 和 ar2[100] 是 char 类型的数组:

  1. 将 ptr 声明为指向 double 类型对象的指针
  2. 将变量 num1 的地址赋值给 ptr。
  3. 显示ptr指向的对象的值。
  4. 将ptr指向的对象的值赋给变量num1。
  5. 显示 num1 的地址。
  6. 将ar1中存储的字符串复制到ar2中。

我的问题是数字 2。问题是指针是 double 的,但变量 num1 是 float 。

我的另一个问题是,如果不使用 for 循环,我看不出如何完成 6。

到目前为止我得到了这个:

  1. double *ptr = new double;
  2. ptr = (double *) &num1;
  3. cout << *ptr;
  4. num1 = *ptr ;
  5. cout << &num1;
  6. //不知道

如果完成这会给我奇怪的值,但如果我将 num1 声明为 double 并将 2 更改为 ptr = &num1 一切正常。

请帮忙解决这个问题两天了。

最佳答案

doublefloat 都是浮点类型。所以如果你的老师说 num1 是一个“浮点类型”,你应该能够逃脱使用 double 。如果你的老师说要使用 float,那你就卡住了。

6 要求您做一些非常具体的事情。这将涉及一些谷歌搜索,但它可以作为 1-liner 完成。

关于c++ - 单行指针操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4963652/

相关文章:

c++ - 返回堆栈的第二个元素而不改变 C++ 中的堆栈的函数

python - 如何在带有 Swig 的 Python 中使用 float **?

php float 错误

c - 设置指针值,之后不更改

c - 数组是静态数据结构。那么内存如何动态分配给它们呢?

python - 如何确定小数是否可以完全表示为 Python float?

c# - 哪些值不能用 double 正确表示

c++ - 在 C++ 中一起使用类和字符串 vector ?

c++ - 我的功能出错(拆分句子)

c++ - 我可以在字符串的 sprintf 中使用 sizeof() 或 #define 来提高精度吗?