新人已阵亡~~求助~C2059 语法错误:“using namespace” C2143 缺少; (在“<<”前面)

四月八日君寻 2015-11-17 12:14:39
第五版C++primer plus10章最后一道习题的初阶版,参照10-5改了试了下,想改个字符串板的。。弄了一晚上完全不知道问题所在==

<header.h>

struct MStruct
{
char vendor[50];
};

class List
{
private:
MStruct list[5];
int count;

public:
List();

void push(char pu[]);
char* pop();
//void ifempty();
//void iffull();
};

<ex10-8.cpp>

#include<iostream>
#include"header.h"
#include<cstring>
List::List()
{
for (int i = 0;i < 5;++i)
strcpy_s(list[i].vendor, "a");
count =0;
}
void List::push(char pu[])
{
if (count >= 5)
{
std::cout << "the list is full";
}
else
{
strcpy_s(list[count].vendor, pu);
++count;
}
}

char* List::pop() //返回字符串(首地址)
{
if (count=0)
{
std::cout << "the list is empty";
}
else
{
return (list[count-1].vendor);
--count;
}

}

<main.cpp>

#include<iostream>
#include"header.h"
#include<cstring>
#include<cctype>
int main()
{
using namespace std;
List ex1;
char ch;
char arr[50];
cout <<"please enter A to add, P to pop, Q to quit";

while (cin>>ch&&toupper(ch) != 'Q')
{
while (cin.get() != '\n')
continue;
if (!isalpha(ch))
{
cout << '\a';
continue;
}
switch (ch)
{
case 'A':
case'a': cout << "enter arr";
cin.get(arr, 50);
while (cin.get() != '\n')
continue;
ex1.push(arr);
break;
case 'P':
case'p': strcpy_s(arr,ex1.pop());
cout << "pop ED: " << arr << endl;
break;
}
cout << "please enter A to add, P to pop, Q to quit";
}
cout << "bye~“;
}
第一次踏上论坛,若是错误低级自己没发现,大神勿喷
...全文
1557 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Alicyu1024 2018-08-27
  • 打赏
  • 举报
回复
引用 5 楼 zhao4zhong1 的回复:
楼主的下一生可能被分号毁了,
楼主的下下一生可能被逗号毁了,
楼主的下下下一生可能被等号毁了,
楼主的下下下下一生可能被问号毁了,
多情自古空余恨,此恨绵绵无绝期。

新手认真最重要啦
redo16 2018-08-22
  • 打赏
  • 举报
回复
不希望被你这种荒谬的言论影响到一些学习程序的人,@赵4老师
信阳毛尖 2015-11-19
  • 打赏
  • 举报
回复
引用 5 楼 zhao4zhong1 的回复:
楼主的下一生可能被分号毁了, 楼主的下下一生可能被逗号毁了, 楼主的下下下一生可能被等号毁了, 楼主的下下下下一生可能被问号毁了, 多情自古空余恨,此恨绵绵无绝期。
阴沟里翻过船才会长记性
赵4老师 2015-11-18
  • 打赏
  • 举报
回复
楼主的下一生可能被分号毁了, 楼主的下下一生可能被逗号毁了, 楼主的下下下一生可能被等号毁了, 楼主的下下下下一生可能被问号毁了, 多情自古空余恨,此恨绵绵无绝期。
赵4老师 2015-11-17
  • 打赏
  • 举报
回复
关于自己是否适合编程的很简单的测试: 在报纸或杂志上随便找一段约1000字的文章,在Word中输入一遍。输完后再参考下面答案: A里面有10处以上文字或标点错误 B里面没有文字或标点错误并敢为此跟人打赌 C里面没有文字或标点错误并且字体和排版完全与原稿一致 D打印在半透明的纸上和原稿重叠在一起检查一模一样,且自我感觉很有成就感 A不适合编程(理由:打字准确度偏低、粗心大意) B初级程序员(理由:打字准确度很高、认真细致、自信、理解全角半角概念) C高级程序员(理由:在B的基础上理解字体和排版也是电脑打印的重要因素、但相比D还不够偏执、精益求精、结果可验证) D软件项目经理(理由:能针对项目给出令人信服的细致到极点的需求说明和典型测试用例。用户几乎挑不出毛病。专业!) 如果想从A变成B的话,到我的资源http://download.csdn.net/detail/zhao4zhong1/4084259里面下载“适合程序员的键盘练习” 偶遇到类似问题都是用 “每次用/*...*/注释掉不同部分再重新编译,直到定位到具体语法出错的位置。” 的方法解决的。
qq_20515431 2015-11-17
  • 打赏
  • 举报
回复
引用 3 楼 qq_32830923 的回复:
[quote=引用 1 楼 qq_20515431的回复:]你的int main()的括号,用的是中文字符 另外这句也有同样的问题cout << "bye~“; 建议用sourceinsight来写代码文件吧
感激呀,括号改了就编译成功了,括号毁一生[/quote] 哈哈,那积分是不是可以划到我头上了啊?
qq_20515431 2015-11-17
  • 打赏
  • 举报
回复
你的int main()的括号,用的是中文字符 另外这句也有同样的问题cout << "bye~“; 建议用sourceinsight来写代码文件吧
四月八日君寻 2015-11-17
  • 打赏
  • 举报
回复
引用 1 楼 qq_20515431的回复:
你的int main()的括号,用的是中文字符 另外这句也有同样的问题cout << "bye~“; 建议用sourceinsight来写代码文件吧
感激呀,括号改了就编译成功了,括号毁一生

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧