C++runtime error cC2664

關於CStdio::Open的error C2664
各位前輩好目前我照著侯俊傑先生所寫的MFC深入淺出當中的MFCCON輸入程式碼目的是要在console window中執行MFC的部份功能
結果卻無法順利編譯我的程式碼如下
Code Snippet
// MFCCON.cpp : 定義主控台應用程式的進入點。//#include &stdafx.h&#include &iostream&#include &MFCCON.h&#ifdef _DEBUG#define new DEBUG_NEW#endif// 僅有的一個應用程式物件CWinApp theAint _tmain(int argc, TCHAR* argv[], TCHAR* envp[]){int nRetCode = 0;// 初始化 MFC 並於失敗時列印錯誤if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0)){// TODO: 配合您的需要變更錯誤碼_tprintf(_T(&嚴重錯誤: MFC 初始化失敗\n&));nRetCode = 1;}else{// TODO: 在此撰寫應用程式行為的程式碼。CSCStdioFfile.Open(&test.txt&, CFile::modeCreate|CFile::modeWrite|CFile::typeText);/* str.Format(&%s\n&, &Hello world!!&);printf(&%s\n&, (LPCTSTR) str);file.WriteString(str);for (int i =1;i&=10;i++){str.Format(&%d\n&, i);printf(&%s&, (LPCTSTR) str);file.WriteString(str);}*/file.Close();}system(&PAUSE&);return nRetC}編譯訊息如下
1&------ 已開始建置: 專案: MFCCON, 組態: Debug Win32 ------1&正在編譯...1&MFCCON.cpp1&c:\documents and settings\esoc\my documents\visual studio 2005\projects\mfccon\mfccon\mfccon.cpp(36) : error C2664: 'CStdioFile:pen' : 無法將參數 1 從 'const char [9]' 轉換成 'LPCTSTR'1& 指向的型別沒有相關; 轉換必須有 reinterpret_cast、C-Style 轉換或函式樣式轉換1&已將建置記錄儲存於 &file://c:\Documents and Settings\esoc\My Documents\Visual Studio 2005\Projects\MFCCON\MFCCON\Debug\BuildLog.htm&1&MFCCON - 1 個錯誤,0 個警告========== 建置: 0 成功、1 失敗、0 最新、0 略過 ==========有人知道這是為什麼嗎??以及如何解決?
應該是UNICODE的問題, 您可以將這一行:
file.Open(&test.txt&, CFile::modeCreate|CFile::modeWrite|CFile::typeText);
file.Open(_T(&test.txt&), CFile::modeCreate|CFile::modeWrite|CFile::typeText);
Microsoft 正在进行一项网上调查,以了解您对 Msdn 网站的意见。如果您选择参加,我们将会在您离开 Msdn 网站时向您显示该网上调查。是否要参加?
<input type="hidden" id="hdnTrackerText" value="请不要关闭此窗口。谢谢!完成访问时,调查将显示在此处,所以请不要关闭此窗口。" />
其他 Office 网站【C++ error C2664】-突袭网
23:04:03【 转载互联网】 作者: &&|&责编:李强
&&& &为了解决用户可能碰到关于"C++ error C2664"相关的问题,突袭网经过收集整理为用户提供相关的解决办法,请注意,解决办法仅供参考,不代表本网同意其意见,如有任何问题请与本网联系。"C++ error C2664"相关的详细问题如下:&min,=n;}void lookup (int t[10], int & min题,最大值;&max&lt。#include &int *&#39:编写函数void lookup (int t[],&i&&}}error C2664;int &&#39;*(&min))*(&min)=t[i];&quot,n: &#39, int &min, int &*(&max))*(&max)=t[i]:&&lt, int & max)在数组t的前n个元素中找出最小的元素且存于min所引用的内存单元;&最小值, int &max);const&#39,if(t[i]&cout&lookup(t;t&#39;&&#92; A reference that is not to &#39;&for(i=1;lookup&#39; ,&max),void main(){int t[10]:&&#39;且编写主函数构成完整程序,最大的元素且存于max所引用的内存单元: cannot convert parameter 3 from &#39;iostream&min&& to &#39, int &max){i++){if(t[i]&void lookup (int t[],n;&&lt===========突袭网收集的解决方案如下===========
解决方案1:<解决方案2:非常感谢
================可能对您有帮助================
这些样写试试 ; Bitmap *pBitmap = new Bitmap(L"resource&#92;&#92;Close.png"); LoadResImage(IDB_PNG_CLOSE,&pBitmap); delete pB=========================================== char 和TCHAR的区别是 1字节编码还是2字节编码。'1'的char编码是0x31,而TCHAR编码这是0x31,0x00.所谓的unicode支持。(当然了,如果你在非unicode环境下char 和TCHA...=========================================== strcat(strWinDir, _T(&&#92;&#92;winhlp32.exe&));换成 lstrcat(strWinDir, _T(&&#92;&#92;winhlp32.exe&));试试呢=========================================== 类型不匹配.strcpy不能将参数1从字符型转换为指针===========================================1653人阅读
  c_str函数的返回&#20540;是const char*的,不能直接赋&#20540;给char*,所以就需要我们进行相应的操作转化,下面就是这一转化过程。
  c&#43;&#43;语言提供了两种字符串实现,其中较原始的一种只是字符串的实现。与C语言的其他部分一样,它在c&#43;&#43;的所有实现中可用,我们将这种实现提供的字符串对象,归为c-串,每个c-串char*类型的。
  标准头文件&cstring&包含操作c-串的函数库。这些表达了我们希望使用的几乎每种字符串操作。 当调用,客户程序提供的是型参数,而库函数内部实现用的是c-串,因此需要将string对象,转化为char*对象,而c_str()提供了这样一种方法,它返回const
char*类型(可读不可改)的指向字符的。 例:
  #include &iostream&
  #include &string&
  int main()
  string add_to = &hello!&;
  const string add_on = &baby&;
  const char *cfirst = add_to.c_str();
  const char *csecond = add_on.c_str();
  char *copy = new char[strlen(cfirst) &#43; strlen(csecond) &#43; 1];
  strcpy(copy, cfirst);
  strcat(copy, csecond);
  add_to =
  cout && &copy: & && copy &&
  delete []
  cout && &add_to: & && add_to &&
  //我强烈建议,以及我的老师也强烈建议我
  //一定要用return 0; 来告诉系统:程序正常结束.
  //return -1;是用来告诉系统:程序异常结束
  //亲们,做开发要认真~共勉~
  //一定要用 int main()
  return 0;
  //以上程序过编译
  //VC 6.0, win7, - -!兼容性差
——————
  简单的例子:
  函数声明:const char *c_str();
  c_str()函数返回一个指向正规C字符串的, 内容与本string串相同.
  这是为了与兼容,在c语言中没有型,故必须通过string类对象的成员函数c_str()把string 对象转换成c中的字符串样式。
  注意:一定要使用strcpy()函数 等来操作方法c_str()返回的
  比如:最好不要这样:
  string s=&1234&;
  c = s.c_str();
  //c最后指向的内容是垃圾,因为s对象被析构,其内容被处理(纠正:s对象的析构是在对c完成赋&#20540;操作之后进行的,故此处并没有错误)
  在vc&#43;&#43;2010中提示的错误原因:
应该这样用:
  char c[20];
  string s=&1234&;
  strcpy(c,s.c_str());
  这样才不会出错,c_str()返回的是一个临时,不能对其进行操作
  ———再举个例子———
  c_str() 以const char* 类型返回 string 内含的字符串
  如果一个函数要求char*参数,可以使用c_str()方法:
  string s = &Hello World!&;
  printf(&%s&, s.c_str()); //输出 &Hello World!&
  ——————
  c_str在打开文件时的用处:
  当需要打开一个由用户自己输入文件名的文件时,可以这样写:ifstream in(st.c_str());。其中st是型,存放的即为用户输入的文件名。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:24355次
排名:千里之外
原创:17篇
转载:66篇
(2)(7)(2)(3)(1)(5)(3)(2)(1)(3)(6)(5)(2)(2)(1)(2)(12)(5)(2)(15)(3)c++错误 C2664_百度知道
c++错误 C2664
inf.open(name); head=NULL; while(!inf.eof()) {
Fread = new F
inf&&Fread-&num&&Fread-&ans&&Fread-&qew&&Fread-&input&&Fread-&line&&Fread-&choice1&&Fread-&choice2;
Fread-&next=NULL;
if(head==NULL)
last-&next=NULL;
last-&next=F
last-&next=NULL;
} } inf.close();error C2664: &#39;void __thisc珐揣粹废诔肚达莎惮极all std::basic_ifstream&char,struct std::char_traits&char& &::open(const char *,int)&#39; : cannot convert parameter 1 from &#39;class std::basic_string&char,struct std::char_traits&char&,class std::allocator&char& &&#39; to &#39;const char *&#39;
出现了新的问题err珐揣粹废诔肚达莎惮极or C2065: &#39;strncpy_s&#39; : undeclared identifierbegin:for(Fread=FFread=Fread-&next){
char input[10],choice1[10],choice2[10];
if(strcmp(num,Fread-&num)==0){
cout&&Fread-&ans&&endl&&Fread-&qew&&endl&&Fread-&input&&endl&&Fread-&line&&
cin.getline(input,10);
strncpy_s(choice1,10,Fread-&choice1,(strlen(Fread-&choice1)-strlen(strchr(Fread-&choice1 ,&#39;:&#39;))));
strncpy_s(choice2,10,Fread-&choice2,(strlen(Fread-&choice2)-strlen(strchr(Fread-&choice2 ,&#39;:&#39;))));
提问者采纳
第一行改成inf.open(name.c_str());
提问者评价
这个问题解决了,还有个问题我找别人解决的
其他类似问题
按默认排序
其他2条回答
这里有错误代码含义解释
inf.open(name);
name是什么
大概这里搓了
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 error c2059 的文章

 

随机推荐