Mar*_*ley 0 c++ pointers function
我决定学习C++以前编程知识非常有限.我目前正在以下的书跳进C++由亚历克斯·阿兰.我已经点了指针的章节,作为练习问题的一部分,我遇到了以下问题:
- 编写一个函数,提示用户输入他或她的名字和姓氏,作为两个单独的值.此函数应通过传递给函数的其他指针(或引用)参数将两个值都返回给调用者.首先尝试使用指针然后使用引用.
这是我写的代码:
#include <iostream>
void getDetails(char * n, char * s)
{
std::cout << "Input name: ";
std::cin >> *n;
std::cout << "\n";
std::cout << "Input surname: ";
std::cin >> *s;
}
int main()
{
char *name = NULL;
char *surname = NULL;
getDetails(name, surname);
std::cout << "Name: " << *name << "\n";
std::cout << "Surname: " << *surname << "\n";
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我一直遇到访问冲突错误,我完全不知道为什么.
其实你有两个问题:
name和surname(这就是你得到访问冲突错误的原因)cin(因为您正在取消引用一个char*导致sigle char的字符)您可以通过使用std::string而不是使用来解决这两个问题char*
| 归档时间: |
|
| 查看次数: |
350 次 |
| 最近记录: |