为什么我的程序在本机上操作很正常,而在别的机器上
操作的结果却不一样?(是从多用了一个指针引起的)。
我在程序中用了很多的指针呀。有五个之多。。
char *pp;*p2,p3....之类的东西,
请问有必要把char *p;改为char *p=(char*)malloc(333);
吗?

解决方案 »

  1.   

    char *p表示p是一个char型指针,不过没有指向哪个内存地址。
    char *p=(char*)malloc(333);表示p是一个char型指针,它指向特定的内存地址。
      

  2.   

    new ,,delete,
    试过了,不行呀。
      

  3.   

    char *p=null;
    *p=(char*)malloc(sizeof(char) * 333 );
      

  4.   

    你可以在程序中安插一些AfxMessageBox,看看从什么地方开始不一样,然后在本机上一步步调试。
      

  5.   

    char *p;
    p='\0';
    也试过了,请大家再出一出主意吧?
    malloc是C里的吧?我用的是VC++6.0
    用new ,试了,不行呀!
      

  6.   

    switch(ss)
     {
    case 2:
    pdest1=(char*)strstr(wordT[0],(const char*)pstr2);  break;
    case 3:
    pdest1=(char*)strstr(wordT[1],(const char*)pstr2);
     break;
    case 4:
    pdest1=(char*)strstr(wordT[2],(const char*)pstr2);

     break;
    case 5:
    pdest1=(char*)strstr(wordT[3],(const char*)pstr2);

    break;
    case 6:
             pdest1=(char*)strstr(wordT[4],(const char*)pstr2);

     break;
    case 7:
    pdest1=(char*)strstr(wordT[5],(const char*)pstr2);

     break;
    default:
    pdest1=(char*)strstr(wordT[5],(const char*)pstr2);

    break;
    }