开发者社区> 问答> 正文

error C2143: 语法错误 : 缺少“;”(在“.”的前面)

在Button函数里调用HuffmanTree1.CreateHfmTree(char Str,int m,int n);
显示错误error C2143: 语法错误 : 缺少“;”(在“.”的前面)

void CHuffmanTreeDlg::OnBnClickedButton1()
{      // TODO: 在此添加控件通知处理程序代码
    UpdateData(TRUE);
    if (m_radio1=1)
    {
    char*pszFileName="C:\C++\HuffmanTree\HuffmanTree\WData.txt";
    CStdioFile myFile;
    CFileException fileException;
  if(myFile.Open(pszFileName,CFile::modeCreate|CFile::typeText|CFile::modeReadWrite),&fileException)
  {   AfxMessageBox("打开成功");
      myFile.SeekToBegin();
      CString str1;
      myFile.ReadString(str1);
      CString str2;
      AfxMessageBox(str1+str2);
     ifstream ifs("WData.txt");
   ofstream ofs("WCode.txt"); 
   char str[1000]; 
   char Str[100]; 
   int i=0,j,m[100],h,k=0; 
  int n=0; 
   char ch; 
   while(ifs.get(ch)) 
      { 
      if(ch!='\n') 
        {str[n++]=ch;}
      for(i=0;i<n;i++) 
       { 
        j=0;h=0; 
        while(str[i]!=str[j]) 
            j++; 
        if(j==i) 
           { 
            Str[k]=str[i]; 

            } 
        else 
            continue; 
        for(j=i;j<n;j++) 
            { 
             if(str[i]==str[j]) 
                h++; 
             }      
        m[k]=h; 
        k++; 
} 
      HuffmanTree1.CreateHfmTree(char Str,int m,int n); 
cin.get();

   m_length=n;
   m_string1="报文的编码已经保存在WCode.txt";
   UpdateData(FALSE);
}
  }
  else
  {
      TRACE("Can't open file%s,error=%u\n",pszFileName,fileException.m_cause);
  }
  myFile.Close();

    }   
}

展开
收起
a123456678 2016-03-04 10:40:04 5044 0
1 条回答
写回答
取消 提交回答
  • 这有可能是一个bug:if (m_radio1=1) (用== 代替 =),但是这并不是语法错误。
    这行:if(myFile.Open(pszFileName,CFile::modeCreate|CFile::typeText|CFile::modeReadWri‌​te),&fileException)也有问题,在if语句中用一个逗号表达式。

    HuffmanTree1.CreateHfmTree(char Str,int m,int n);

    这行也算是函数声明,但是缺少一个return类型,没有对函数进行调用。

    2019-07-17 18:51:55
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载