2017-09-01 56 views
-2

我正在为我的C++类做一个家庭作业,我似乎无法弄清楚我做错了什么。在C++中返回一个'/ n'字符

这里是方向:

练习:read02

说明

在这个练习中,您将创建一个函数来获取从字符串中的字符,但只有在指定的索引中范围。如果超出范围,则返回换行符。

功能名称

read02

参数

str: a std::string 
index: a size_t 

返回值

存储在索引中的STR,除非索引超出范围的炭,然后\ n。

实例

std::string data = "hello"; 
size_t i = 3; 
char x = read02(data, i); 

提示

字符串文档 请记住,包括头文件。 size_t需要cstdlib头文件。 size_t是无符号的(只包括> = 0的值)。 '\ n'是换行符的字符常量。

以下是我有:

#include <string> 
#include <cstdlib> 

char read02(std::string str, size_t index){ 
    size_t i; 

    for(i = 0; i < str.size(); i++){ 
     if(index > 0 && index < str.size()){ 
      return str[index]; 
     } 
     else{ 
      return '/n'; 
     } 
    } 
    return 0; 
} 

这里是我得到的错误:

error: multi-character character constant [-Werror=multichar] 
      return '/n'; 

任何解释,为什么我得到这个错误,以及如何解决它会不胜感激。

谢谢!

+0

https://msdn.microsoft.com/en-us/library/6aw8xdf2.aspx –

+0

的问题是,你没有写的说明告诉你的人物写。 – molbdnilo

回答

5

您只是使用了错误的斜杠作为新行。

return '\n' 

这应该工作