while (!m_pRecordset->adoEOF)
{
Cstring tt = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("F_INPUT_VALUE");     
   tmpNum++;
     m_pRecordset->MoveNext();
}
我从数据库的到这个值我这么把它 赋给一个 char **p 的指针

解决方案 »

  1.   

    CString csMyString = "Hello World";
    char *p = csMyString.GetBuffer(csMyString.GetLength());
    当然也可以:
    char **p = csMyString.GetBuffer(csMyString.GetLength());
      

  2.   

    使用GetBuffer如果不配合ReleaseBuffer的话,会造成内存溢出。建议先开辟一个缓冲区,将GetBuffer的内容复制到缓冲区再使用双指针指向该缓冲区的指针地址。
      

  3.   

    char **p;   
    p  = new char*[50];     *(p + recNum )= str_path.GetBuffer(str_path.GetLength());
         str_path.ReleaseBuffer();我这样赋值为什么不对啊