strlen 和 strcpy 的 C++ 编译问题

标签 c++

#include<iostream>
using namespace std;

int main()
{
    char a[5],b[5];
    cout<<strlen(a)<<endl;
    strcpy(a,b);
}

当我使用 g++ filename.cpp 编译代码时,代码编译没有问题,但是当我的 friend 尝试使用 dev-c++ 编译时,他们会出错!

基于 cplusplus.com ,我才是应该出错的人!!

所以我只是想知道是什么导致了这里的差异?

P.S: 我尝试了不同版本的 C++ 使用 -std=c++98 throw -std=c++2a

最佳答案

strlenstrcpy<cstring> 中声明 header 。一些标准库实现可能包含在 <iostream> 中,有些人可能不会。这解释了为什么它可能会使用某些设置而不是其他设置进行编译。

关于strlen 和 strcpy 的 C++ 编译问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62091419/

相关文章:

用于 LINQ 静态方法的 C++/CLI Lambda 选择器

python - 在 mac 雪豹 macports 上 boost python 导入错误

c++ - 更改 .h 文件时是否可以重用 .so 文件

c++ - 如何从流服务器接收消息?

c++ - 在另一个类中定义的类如何知道它的父类?

c++ - Qt-如何在拖动项目时显示图像/图标/数据?

c++ - 您建议使用哪种 native C++ 分析工具?

c++ - 通过引用传递 vector 内联

c++ - 模板函数中 const 引用的类型推导

c++如何在不知道确切参数的情况下定义函数