您的位置:首页 > 其它

日积月累

2010-11-19 11:15 106 查看
1、其它数据类型转换为字符串  
短整型(int)  
itoa(i,temp,10);///将i转换  
为字符串放入temp中,最后一个数字表示十进制  
itoa(i,temp,2);   ///按二进制方式转换  
长整型(long)  
ltoa(l,temp,10);

 

2、字符串转换为其它数据类型  
strcpy(temp,"123");  
短整型(int)  
i   =   atoi(temp);  
长整型(long)  
l   =   atol(temp);  
浮点(double)  
d   =   atof(temp);

 

3、xml相关

<iq from='、、、@、、、/telnet' id='q01' to='location_base_server' type='get' xml:lang='en-US'><locationquery xmlns='urn:xmpp:locationquery:0'><username>zrd</username><lat>5700</lat><lon>9918</lon><accuracy>35.6</accuracy></locationquery></iq>
 查找usrname

 ns = nad_find_elem(pkt->nad, 2, -1, "username", 1);
 log_debug(ZONE, "2  1 ns:%d  ..............", ns);
 if(ns >= 0 && 0 == strncmp("username", NAD_ENAME(pkt->nad, ns),   NAD_ENAME_L(pkt->nad, ns)))
 {
  snprintf(username, 32, "%.*s", NAD_CDATA_L(pkt->nad, ns), NAD_CDATA(pkt->nad, ns));
  log_debug(ZONE, "wap packet username: %s", username); 
 }
 else
 {
  log_debug(ZONE, "ERROR: no username.");
  return ;
 }

 查找lat,lon

  ns = nad_find_elem(pkt->nad, 2, -1, "lon", 1);
  log_debug(ZONE, "2  1 ns:%d  ..............", ns);
  if(ns >= 0 && 0 == strncmp("lon", NAD_ENAME(pkt->nad, ns),  NAD_ENAME_L(pkt->nad, ns)))
  {
      snprintf(tmp, 32, "%.*s", NAD_CDATA_L(pkt->nad, ns), NAD_CDATA(pkt->nad, ns));
   log_debug(ZONE, "client packet lon: %s", tmp);
   lon= atoi(tmp);
   log_debug(ZONE, "client packet lon: %d", lon);
  }

 xml:<data><message_entity><username>name</username><stat>1</stat></message_entity></data>

     查找username:

     iq = nad_find_elem(nad, 1, -1, "username", 1);
     log_debug(ZONE, "1   1 iq:%d  ..............", iq);
     if(iq >= 0 && 0 == strncmp("username", NAD_ENAME(nad, iq),   NAD_ENAME_L(nad, iq)))
     {
         snprintf(strUsername, 32, "%.*s", NAD_CDATA_L(nad, iq), NAD_CDATA(nad, iq));
         log_debug(ZONE, "wap packet username: %s", strUsername);  
     }
     else
     {
         log_debug(ZONE, "ERROR: no username.");
         return -1;
     }
      查找stat:
      iq = nad_find_elem(nad, 1, -1, "stat", 1);
      log_debug(ZONE, "1   1 iq:%d ..............", iq);
      if(iq >= 0 && 0 == strncmp("stat", NAD_ENAME(nad, iq),   NAD_ENAME_L(nad, iq)))
      {
          type = *(NAD_CDATA(nad, iq));
          log_debug(ZONE, "wap packet: type: %c ", type);
      }
      else
      {
          log_debug(ZONE, "ERROR: no stat.");
          return -1;
      }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  xmpp xml wap server c