USES_CONVERSION是用来转换类型的,比如我们很常见的问题:

    在Socket编程时候,我们的IP地址从界面上输进去一般都使用CString类型的,可是在SOCKADDR_IN中的inet_addr却是const char *我们就不能直接用CString来用。我们就可以使用T2A()宏了。

    SOCKADDR_IN localaddr;   

    CString m_IP = L"192.168.1.2";

    USES_CONVERSION;
    localaddr.sin_family = AF_INET;
    localaddr.sin_addr.S_un.S_addr = inet_addr(T2A(m_IP));

 

当然使用USES_CONVERSION也是要注意一个很重要的问题。

   USES_CONVERSION它是在堆栈上分配空间的,也就是说你在你在函数未结束就不会被释放掉。所有要注意不要在一个函数中用while循环执行它,不然栈空间就马上会分配完(栈空间一般只有2M,很小)。

 

相关文章:

  • 2022-01-04
  • 2022-12-23
  • 2022-01-10
  • 2021-11-05
  • 2021-10-30
  • 2022-01-03
  • 2021-05-30
  • 2022-12-23
猜你喜欢
  • 2021-11-09
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-02
  • 2022-12-23
相关资源
相似解决方案