0

我正在尝试将结构传递给我的函数,但我无法弄清楚。我有下面的代码

struct box
{
char sMaker[40]; 
float fHeight;  //The height of the box
float fWidth;   //The width of the box
float fLength;  //The length of the box
float fVolume;  //The volume of the box
}; //end box

void calcVolume (box *p)
{
p‐>fVolume = p‐>fWidth * p‐>fHeight * p->fLength;
} //end calcVolume

它返回 p- 是一个未声明的标识符的错误。我对c ++真的很陌生,为什么不编译。

太感谢了。

4

3 回答 3

4

-使用emacs's查看您的破折号 ( ) 之一describe-char

preferred charset: unicode (Unicode (ISO10646))
code point in charset: 0x2010
name: HYPHEN
general-category: Pd (Punctuation, Dash)

将它们全部替换为减号。

于 2013-02-13T22:56:08.250 回答
2

检查您的源文件是否为纯 ASCII。在我看来,您正在使用一些扩展的 unicode 字符代替“减号”符号“-”

于 2013-02-13T22:55:52.743 回答
1

错误可能在调用 calcVolume 的代码中(或完全在其他地方)。你需要这样称呼它:

box b;
calcVolume(&b);

编辑:没关系,真正的错误是连字符 (‐) 而不是减号 (-)。

于 2013-02-13T22:55:39.997 回答