第一次使用单链表总结(C++)

学得数据结构——线性表后,第一次使用单链表解决一个插队问题,花了三个晚上才搞定,很悲剧,故自我总结其中的一些错误经验,大大小小,供日后鉴之。

使用的是c++编程,用Visual c++ 6.0编译     ——完全是个人的一点点心得,可能仍然存在着错误,相互指教。

 

1.main函数。很久不使用c++编程后的第一个错误竟是遗漏这个函数,于是组建时没有出现error和warning为,而在编译时出现了“error LNK2001: unresolved external symbol _main”的error。根据错误提示,这是一个连接错误。由于main函数是程序编译的入口,程序中没有main函数也就意味着程序无法正常编译了。将main函数添加上去后,该错误解决。

 

2.根据编程要求,设置单链表存储结构时,结点的数据为字符串,故将其设置成string类型,整个程序组建和编译都能通过,但在执行时出现错误,其提示为:First-chance exception in Line_List.exe: 0xC0000005: Access Violation。无法找到程序设计上的问题,最终通过其他程序段编译时的对比发现,在编译中,自己设计的链表的数据域空间无法正常被分配。但将单链表的存储结构中的数据域类型改成单个字符的char类型,程序编译成功。于是修改了数据域类型,将string类型改成了char,同时设置数据域为字符数组(字符串),设置了字符串的长度(需注意后续程序中的赋值是字符串赋值strcpy函数。如此修改之后,程序编译才顺利,可以进一步执行。

在此需要赞一下C++比C强悍之处,在处理字符串时除了可以使用各类string类型的函数之外,还可以直接读入、输出(cin/cout)字符串。

 

3.之后的问题,都是一些因为寻找2中所提及的错误原因产生的,如“local function definitions are illegal”,是相应的程序段没有写完整,少了最后的"}"。粗心导致的问题有时候还是很严重的。

##另外就是一些待进一步提高与晚上的地方了。

*使用单链表来存放队列成员,创建过程中使用的是逆序输入的方法,原因是,想不出,顺序输入法。呃,这个导致最后队列的输出也不得不使用了逆序的输出顺序,浪费了不少时间和空间。

*正确使用单链表,虽然会用单链表解决一些问题,但对单链表的理解程度还是不够。

*需要进一步学习C++相关知识内容。

好吧,加油!

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值