【发布时间】:2011-02-13 10:00:03
【问题描述】:
我有一个函数control(),它是线程化的。它调用另一个函数来解析一些服务器响应。这是一些冗长的初始化,无法解决我的问题。
int oct1 = 0;
int oct2 = 0;
int oct3 = 0;
int oct4 = 0;
int p1 = 0;
int p2 = 0;
sscanf(passive_ip, "%i,%i,%i,%i,%i,%i", &oct1, &oct2, &oct3, &oct4, &p1, &p2);
我经常发现我的结果搞砸了。例如:
S->C: 227 Entering Passive Mode (128,111,40,221,206,170)
The Parsed Result: 128.111.40.221 206,170
S->C: 227 Entering Passive Mode (128,111,40,221,80,8)
The Parsed Result: 128.111.40.221 80,8170
S->C: 227 Entering Passive Mode (128,111,40,221,241,196)
The Parsed Result: 128.111.40.221 241,196
S->C: 227 Entering Passive Mode (128,111,40,221,70,216)
The Parsed Result: 128.111.40.221 70,2166
注意旧值是如何被新值附加/混杂在一起的。关于为什么会发生这种情况的任何线索?
【问题讨论】:
标签: c memory-management memory-leaks scanf