C++ int、int[]、float,尤其是 char *、char[]、char 是否与 C 中的这些相同。我相信它们是假定的,所以它们相同吗?
Are C++ int, int[], float, and especially char *, char[], char are same as these of C. I believe they are premitive so are they same?
有一些数据类型可以包含数据(我认为是在内存中)。所以我想知道这些类型,
char,char *, char[], -- especially
int, int[], int *, float, decimal, short, long, if there are any other please mention
在 C 和 C++ 中相同。
如果它们相同,那么我可以在 cpp 文件中使用内存函数和字符串函数以及 int、float、decimal、binary 等 C 中可用的函数,如 memset,memcpy,memcmp,etc.
和字符串函数,如 strcmp, strstr, strlen, etc.
和完整的 C++ 库或一种混合的 C++ C 文件,它是 cpp 或 cc 扩展名,需要用 g++ 或 c++ 编译器编译?
我可以分配套接字缓冲区或将其复制到 C++ class 相同类型的 C char[] 成员到 char some_classobj->charsocket_datal[1024]
还是 C++ 有自己的这些函数版本? What's the header files in this case: header file I only like to ask also in this question.
are C++ int, int[], float, and especially char *, char[], char are same as these of C
是的。
can I use memory functions and string functions and int, float, decimal,binary,etc functions available in C like memset,memcpy,memcmp,etc. and string functions like strcmp, strstr, strlen,etc. in cpp file and complete C++ library
那些C标准库函数包含在C++标准库中。通过添加前缀 c 和删除后缀 .h 对 header 名称进行了轻微更改,例如:<string.h>
-> <cstring>
并且函数位于命名空间 std
中。请注意,对于其中一些函数的许多情况,C++ 标准库中有更好的替代方案,因此我建议彻底学习 C++。
旧的 C 标准 header 名称也存在,但不推荐使用它们。函数 也可以 在全局命名空间中声明,但在使用 C++ header.
时不能保证这一点
can I assign socket buffer or copy it to c++ class member of same type like C char[]
数组在 C++ 中不可赋值,就像它们在 C 中不可赋值一样。您可以赋值 class 本身,就像您可以在 C 中赋值结构一样。
这是在 C++ 中复制数组的好方法:
extern int from[42];
extern int to[42];
void example()
{
std::ranges::copy(from, to);
}
有一些数据类型可以包含数据(我认为是在内存中)。所以我想知道这些类型,
char,char *, char[], -- especially
int, int[], int *, float, decimal, short, long, if there are any other please mention
在 C 和 C++ 中相同。
如果它们相同,那么我可以在 cpp 文件中使用内存函数和字符串函数以及 int、float、decimal、binary 等 C 中可用的函数,如 memset,memcpy,memcmp,etc.
和字符串函数,如 strcmp, strstr, strlen, etc.
和完整的 C++ 库或一种混合的 C++ C 文件,它是 cpp 或 cc 扩展名,需要用 g++ 或 c++ 编译器编译?
我可以分配套接字缓冲区或将其复制到 C++ class 相同类型的 C char[] 成员到 char some_classobj->charsocket_datal[1024]
还是 C++ 有自己的这些函数版本? What's the header files in this case: header file I only like to ask also in this question.
are C++ int, int[], float, and especially char *, char[], char are same as these of C
是的。
can I use memory functions and string functions and int, float, decimal,binary,etc functions available in C like memset,memcpy,memcmp,etc. and string functions like strcmp, strstr, strlen,etc. in cpp file and complete C++ library
那些C标准库函数包含在C++标准库中。通过添加前缀 c 和删除后缀 .h 对 header 名称进行了轻微更改,例如:<string.h>
-> <cstring>
并且函数位于命名空间 std
中。请注意,对于其中一些函数的许多情况,C++ 标准库中有更好的替代方案,因此我建议彻底学习 C++。
旧的 C 标准 header 名称也存在,但不推荐使用它们。函数 也可以 在全局命名空间中声明,但在使用 C++ header.
时不能保证这一点can I assign socket buffer or copy it to c++ class member of same type like C char[]
数组在 C++ 中不可赋值,就像它们在 C 中不可赋值一样。您可以赋值 class 本身,就像您可以在 C 中赋值结构一样。
这是在 C++ 中复制数组的好方法:
extern int from[42];
extern int to[42];
void example()
{
std::ranges::copy(from, to);
}