如何解决在函数中显示地址
我正在完成一项学校作业,但我不知道如何完成 C 部分。
这是作业(除了 C 部分我什么都有):
A.创建一个名为 charIncrementValue 的函数,用于接收字符类型。在 driverfunction() 中,我们创建了一个按值传递的字符保存变量。让函数用++操作更新参数变量,并将其显示在函数内部。驱动程序将在函数调用后再次显示它。
B.创建另一个名为 charIncrementReference 的函数,它执行与 A 部分相同的操作,但这次它应该通过引用处理 char 变量。
C.创建另一个名为 charIncrementValueShow 的函数并再次执行与 A 部分相同的操作,但这次将其编码为在函数中显示地址,而不是值。
我的问题是显示地址。我不知道在 printf()
之外如何做,这门课我还没有学过,所以我不想越界。
我的代码:
#include <cassert>
#include <iosfwd>
#include <iostream>
#include <iomanip>
#include <limits>
#include <cmath>
using std::cout;
using std::cin;
using std::endl;
//Task 4 Prototypes
void charIncrementValue(char charVar);
void charIncrementReference(char &charVar);
void charIncrementValueShow(char charVar);
void
passBy()
{
// 4-A
char holdVar = 'g';
charIncrementValue(holdVar);
cout << "holdVar = " << holdVar << endl;
cout << "end of part 4-A" << endl;
cin.get();
// 4-B
char holdVar2 = 'g';
charIncrementReference(holdVar2);
cout << "holdVar2 = " << holdVar2 << endl;
cout << "end of part 4-B" << endl;
cin.get();
// 4-C
char holdVar3 = 'g';
charIncrementValueShow(holdVar3);
cout << "holdVar3 = " << holdVar3 << endl;
cout << "end of part 4-C" << endl;
cout << "end of pass passBy" << endl;
cin.get();
}
//Task 4-A function to increment a value passed by value
void charIncrementValue(char charVar)
{
++charVar;
cout << "charVar = " << charVar << endl;
}
//Task 4-B function to increment a value passed by reference
void charIncrementReference(char &charVar)
{
++charVar;
cout << "charVar = " << charVar << endl;
}
//Task 4-C function to increment the address of a value
void charIncrementValueShow(char charVar)
{
++charVar;
cout << "charVar = " << charVar << endl;
}
任务 4-C 只是 4-A 的复制/粘贴,因为我只是想要一个填充物,直到我明白需要什么。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。