找到关于编程的34423 篇文章

如何在 C++ 中将字符串解析为整数?

Priya Pallavi
更新于 2020年2月12日 06:28:22

1K+ 次浏览

您可以使用字符串流将 C++ 中的整数解析为整数。此方法需要进行一些错误检查。示例 #include <string> #include <sstream> using namespace std; int str_to_int(const string &str) { stringstream ss(str); int num; ss >> num; return num; } int main() { string s = "12345"; int x = str_to_int(s); cout

如何在 C++ 中不等待换行符就读取标准输入中的字符?

Arjun Thakur
更新于 2020年2月12日 06:26:23

3K+ 次浏览

对于此操作,不存在可移植的解决方案。在 Windows 上,您可以使用 conio(控制台 I/O)库中的 getch() 函数获取按下的字符。示例 #include <conio.h> #include <iostream> using namespace std; int main() { char c; while(1){ // 无限循环 c = getch(); cout

为什么 C++ 具有头文件和 .cpp 文件?

George John
更新于 2019年7月30日 22:30:22

3K+ 次浏览

C++ 使用头文件和 .cpp 文件将接口与实现分开。头文件声明类(或正在实现的任何内容)将“做什么”,即类的 API,类似于 Java 中的接口。另一方面,cpp 文件定义了它将“如何”执行这些功能,即这些声明功能的实现。这减少了依赖性。使用头文件的代码不需要知道实现的所有细节以及仅为此目的所需的任何其他类/头文件。它只需要关注它正在尝试实现的内容。这…… 阅读更多

如何在 C++ 中在构造函数内部调用虚函数?

V Jyothi
更新于 2020年6月24日 06:17:10

683 次浏览

从构造函数或析构函数调用虚函数是危险的,应尽可能避免。这是因为调用的虚函数是从基类而不是派生类调用的。在 C++ 中,每个类都在进入其自身构造之前构建其自身的虚方法表版本。因此,在构造函数中对虚方法的调用将调用基类的虚方法。或者,如果它在该级别没有实现,它将产生一个纯虚方法调用。一旦基类完全构造完毕,编译器就开始构建派生类,并覆盖…… 阅读更多

什么是 C/C++ 中的段错误?

Priya Pallavi
更新于 2020年1月27日 12:35:13

9K+ 次浏览

当您的程序尝试访问它无权访问的内存区域时,就会发生段错误。换句话说,当您的程序尝试访问超出操作系统为其程序分配的限制的内存时。段错误主要由以下指针引起:- 未正确初始化。- 在它们指向的内存已被重新分配或释放后使用。- 在索引数组中使用,其中索引超出数组边界。

如何在 C/C++ 中调试核心文件?

Ankith Reddy
更新于 2020年6月24日 06:17:58

348 次浏览

当程序由于程序故障而被操作系统终止时,进程会转储核心文件。发生这种情况的最常见原因是程序访问了无效的指针值,例如 NULL 或其内存区域之外的某个值。作为该过程的一部分,操作系统尝试将我们的信息写入文件,以便我们分析发生的情况。此核心文件可按如下方式用于诊断和调试我们的程序:- 核心文件默认转储到 /proc/sys/kernel 目录。要调试核心文件,必须使用…… 阅读更多

C++ 中的 explicit 关键字是什么意思?

Nikitha N
更新于 2020年6月24日 06:18:59

3K+ 次浏览

C++ 中的 explicit 关键字用于标记构造函数,使其不隐式转换类型。例如,如果您有一个 Foo 类:class Foo { public: Foo(int n); // 为 Foo 对象分配 n 个字节 Foo(const char *p); // 使用 char *p 初始化对象 };现在,如果您尝试 Foo mystring = 'x';字符 'x' 将被隐式转换为 int,然后将调用 Foo(int) 构造函数。但这并非预期结果。因此,为了防止这种情况并使代码不易出错,请将构造函数定义为 explicit:示例 class Foo { public: …… 阅读更多

如何在 C++ 中将整数转换为字符串?

George John
更新于 2020年6月24日 06:19:44

3K+ 次浏览

您可以使用 C 中的 itoa 函数将整数转换为字符串。示例 #include <iostream> int main() { int a = 10; char *intStr = itoa(a); string str = string(intStr); cout

如何使用 C/C++ 获取目录中的文件列表?

Chandu yadav
更新于 2020年1月27日 12:32:32

2K+ 次浏览

标准 C++ 没有提供执行此操作的方法。您可以使用 system 命令初始化 ls 命令,如下所示:示例 #include <stdlib.h> int main () { char command[50] = "ls -l"; system(command); return 0; }输出这将给出以下输出:-rwxrwxrwx 1 root root 9728 Feb 25 20:51 a.out -rwxrwxrwx 1 root root 131 Feb 25 20:44 hello.cpp -rwxrwxrwx 1 root root 243 Sep 7 13:09 hello.py -rwxrwxrwx 1 root root 33198 Jan 7 11:42 hello.o drwxrwxrwx 0 root root 512 Oct 1 21:40 hydeout -rwxrwxrwx 1 root root 42 Oct 21 11:29 …… 阅读更多

C++ 中“std::endl”和“\n”的区别是什么?

Srinivas Gorla
更新于 2019年7月30日 22:30:22

323 次浏览

"\n" 输出换行符(以适当的平台特定表示形式,因此它在 Windows 上生成“\r”),但 std::endl 执行相同的操作并刷新流。通常,您不需要立即刷新流,这只会降低性能,因此,在大多数情况下,没有理由使用 std::endl。当您想手动刷新流,因为您希望您的输出及时(即不延迟)地显示给用户时,您应该使用 std::endl 而不是将 “\n” 写入流。

广告