VC6的工程在2003里怎么通不过
e:\code\test\test.cpp(6) : fatal error C1083: 无法打开包含文件:“iostream.h”: No such file or directory
很简单的一个测试程序
另外 我想查一下VC的STRCPY这些函数的源代码 怎么找不到string.cpp这个文件
[解决办法]
1. #include <iostream>
2005遵循了最新的C++标准,把C++头文件的后面的.h扩展名都去掉了
2. CRT 函数的代码都在$(YOUR_2005_DIR)\VC\crt\src下面。你所说的strcpy的代码在$(YOUR_2005_DIR)\VC\crt\src\intel\strcat.asm中。
[解决办法]
char *p = "abcdefg; ";是常量,是只读不可修改的,修改的话会报Access Violation。应该make一份copy再调你的Reverse函数。
Main应该这样写:
int main(int argc, char* argv[])
{
char *p = strdup( "abcdefg; ");
cout < < p < < endl;
Reverse(p);
cout < < p < < endl;
free(p);
}
我手头没有2003,但想来应该是2003和2005在对字符串常量的处理方式不同而造成的。其实2005这么做是正确的,可以发现更多问题。