C到C++代码修改
1 对于for循环等语句的修改
对于for语句中循环条件的控制时,循环变量应该在其外部定义。
例如以下代码:
for(int i = 0; i < ;i++)
{
fread(&[i].coordinate[0], sizeof(float), 1, rst);
[i].node_ID = i+1;
}//A
for(i = 0; i < ;i++)
fread(&[i].coordinate[1], sizeof(float), 1, rst);
该代码的for语句循环条件中定义了一个整型变量i,在C语言中其存在周期为整个函数中,但是在C++中,它的作用域只到A处为止,因此对于第二个for语句,编译器就不知道循环变量i的数据类型,因此会报错。
修改方法如下:
Int i=0;
for(i = 0; i < ;i++)
{
fread(&[i].coordinate[0], sizeof(float), 1, rst);
[i].node_ID = i+1;
}
for(i = 0; i < ;i++)
fread(&[i].coordinate[1], sizeof(float), 1, rst);
即在循环语句之前定义循环变量。
2 The file contains a character that cannot be represented in the current code page
这类错误的原因是在注释中用到了一些中文的符号,而在C++编译界面中,这类符号是不能显示的,因此在写注释时应当加以注意。
3 'strcpy' This function or variable may be unsafe. Consider using strcpy_s instead. 类问题
这是因为VS2005中认为CRT中的一组函数如果使用不当,可能会产生诸如内存泄露、缓冲区溢出、非法访问等安全问题。这些函数如:strcpy、strcat等。对于这些问题,VC2005建议使用这些函数的更高级的安全版本,即在这些函数名后面加了一个_s的函数。这些安全版本函数使用起来更有效,也便于识别,如:s
c到c++代码修改 来自淘豆网m.daumloan.com转载请标明出处.