【发布时间】:2015-07-28 13:31:22
【问题描述】:
我正在与响应 \r\n 的 GSM SIM900 模块连接。我已将 GSM 响应存储在一个数组中,需要从中提取字符。我正在检查docklight中的响应,它是这样的:
\r\n +CMTI: "SM",1 \r\n
我需要从上面提取最后一个整数 1 并将其存储在一个变量中。
这里\r\n 是回车和换行
我很困惑\r(回车)应该被视为单字符还是双字符。
代码:
char var[15] = "\r\nhello:4";
int i,l;
char k;
for(i=0;i<=10;i++)
{
if(isdigit(var[i]))
{
k = var[i];
/* l = atoi(k); */
l = atoi(&var[i]); /* Get number from string */
printf("output=%d",k);
printf("done");
}
else
{
printf("NO");
}
}
【问题讨论】:
-
我不明白你所说的 GSM 或“它是这样的”是什么意思。实际的字符串是什么?
-
为什么不使用循环来检查每个字符是否为数字?当字符为数字时,有一个函数返回 1。
-
哪个功能,请告诉我
-
你需要知道整数在哪里或者如何找到它
-
@Giorgi 我需要提取整数