C_and_CPP 板


LINE

#include <stdio.h> #include <stdlib.h> #include <iostream> #include <string> #include <fstream> #include <sstream> using namespace std; typedef struct node { string name; int number; struct node* prev; struct node* link; } NODE; int main() { string geTmp; string strTmp; string inTmp; NODE* list; string filenameR = "phone.txt"; ifstream inFile; inFile.open(filenameR.c_str()); while( getline(inFile, geTmp) ) { list = (NODE*)malloc(sizeof(NODE)); stringstream token(geTmp); while(1) { token>>strTmp; if(token.fail()) { break; } list->name = strTmp; token>>inTmp; list->number = atoi( inTmp.c_str() ); cout<<list->number<<endl; cout<<strTmp<<endl; } } return 0; } 若将黄色的部份盖掉 程式就不会出问题 觉得蛮怪的 把读到东西存成string 然後assign给structure里面的string data type一样 却会当掉....不知道原因为何ˊ ˋ" 请问有人能帮忙解惑吗? --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.243.94
1F:推 legnaleurc:Use `operator new` instead of `malloc` 05/11 20:44
2F:→ homer00:好像还是会当...? 05/11 21:00
3F:推 littleshan:好像?你试过了吗? 05/11 22:07
4F:推 littleshan:另外这支程式会 memory leak 05/11 22:15
5F:→ kkroy:已经找到问题了,因为list是动态记忆体规画, 05/11 22:17
6F:→ kkroy:list->name 每次读的字串大小不尽相同 05/11 22:18
7F:→ kkroy:compile会过,但是程式跑会当掉。 05/11 22:18
8F:→ adrianshum:不知道你在说什麽, name 是 std::string,它的=operator 05/12 11:15
9F:→ adrianshum:根本就预计你会 assgin 不同长度的东西进去 05/12 11:15
10F:→ homer00:试过 会当 05/12 13:27
11F:推 littleshan:你档案多大?有释放记忆体吗?有检查是否回传NULL吗? 05/12 13:37
12F:→ sunneo:喔 会当,是吧 05/12 21:28
13F:→ sunneo:我猜因为你看不懂一楼的解释 所以就没做了 於是另外猜测 05/12 21:42
14F:→ homer00:暂时有其他比较low的方法可以替代 加上作业有时效性 05/12 21:55
15F:→ homer00:我等忙完再来讨论 ˊˋ" 05/12 21:56
16F:→ homer00:是看不懂一楼的建议没错 还没去找语法 05/12 21:57
17F:→ sunneo:一楼的意思是list = (NODE*)malloc(sizeof(NODE)); 05/12 21:59
18F:→ sunneo:改成list = new NODE; 05/12 21:59
19F:→ sunneo:因为malloc只配置空间 所以里面的std::string内容是乱的 05/12 22:01







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:WOW站内搜寻

TOP