针对 C 找到了 1356 篇文章

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

Pythonista
更新时间:2020 年 1 月 27 日,12:41:27

517 次浏览

首先,使用 strchr() 函数从左括号 '(' 提取字符。char *name="The Matrix(1999)"; char *ps; ps=strchr(name,'(');然后将括号 () 内的每个字符添加到一个字符数组char y[5]=""; int  p; for (p=1;p

C/C++ 中常见的分段错误原因列表

Ramu Prasad
更新时间:2020 年 1 月 27 日,12:38:34

4 次浏览

段错误的主要原因是访问未初始化、超出程序允许范围的内存或尝试修改字符串文字。这些错误可能导致段错误,但没有保证它们会引发段错误。以下列出了一些常见的段错误原因:超过边界访问数组取消引用空指针取消引用释放的内存取消引用未初始化的指针不当使用 "&"(地址)和 "*"(取引用)运算符printf 和 scanf 语句中的格式说明符不当发生栈溢出向只读内存写入

C/C++ 中的编译/链接过程如何工作?

Chandu yadav
更新时间:2020 年 1 月 27 日,12:37:53

4 次浏览

C++ 程序的编译包含三个步骤:预处理,简单来说,C 预处理器只是一个文本替换工具,它指示编译器在实际编译前执行所需的预处理。它处理 #include、#define 等预处理指令。编译,编译基于预处理文件进行。编译器解析纯 C++ 源代码,并将其转换为汇编代码。然后调用汇编器,将汇编代码转换为机器代码(二进制)作为目标文件。这些目标文件可能引用未定义的符号。编译器不会给出... 阅读更多

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

Priya Pallavi
更新于 27-Jan-2020 12:35:13

9K+ 浏览量

当你尝试访问程序不允许访问的内存区域时,就会发生分段错误。换句话说,当你的程序尝试访问超出操作系统为你的程序分配的限制的内存时,就会发生分段错误。分段错误大部分由下列原因引起:使用正确的初始化指针。在指向它的内存被重新分配或释放后使用指针。在索引超出数组边界的索引数组中使用指针。

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

Ankith Reddy
更新于 24-Jun-2020 06:17:58

348 浏览量

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

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

Chandu yadav
更新于 27-Jan-2020 12:32:32

2K+ 浏览量

标准 C++ 不提供执行此操作的方法。可以使用 system 命令初始化 ls 命令,如下所示:示例#include 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/C++ 中不能在 switch 语句中声明变量?

George John
更新于 27-Jan-2020 12:30:17

895 浏览量

可以 switch 语句中声明变量。你只需要在一个新的 switch 语句范围内声明并使用它们。例如,示例#include using namespace std; int main() {    int i = 10;    switch(i) {       case 2:       // 一些代码       break;       case 10:{          int x = 13;          cout

C/C++ 中的 int argc、char *argv[] 是什么意思?

Chandu yadav
更新于 24-Jun-2020 06:12:03

7K+ 浏览量

argc 表示参数数,argv 表示参数值。当主函数开始执行时,这些变量传递给主函数。当我们运行一个程序时,我们可以将参数传递给该程序,如 -$ ./a.out helloExampleHere hello 是可执行程序的参数。这可以在你的程序中访问。例如,#include using namespace std; int main(int argc, char** argv) {    cout

为何我们在 C++ 代码中使用 extern "C"?

Priya Pallavi
更新于 2019 年 7 月 30 日 晚上 10:30:22

1 千+ 浏览

当声明一个在 C 中实现/编译的函数时,你需要在 C++ 中使用 extern "C"。使用 extern "C" 让编译器知道我们想要使用 C 命名和调用惯例。这导致编译器在我们 C++ 代码中进入 C 模式。这是需要的,因为 C++ 编译器在符号表中以不同于 C 编译器的形式混淆名称,因此行为与 C 编译器不同。

C++0x 是否与 C 兼容?

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

108 个浏览

C++(98)和新标准(C++0x 或 C++11)都不完全与 C 兼容。C++ 从未完全与 C 兼容。

广告