Questions tagged «c»

C是用于操作系统,游戏和其他高性能工作的通用计算机编程语言,与C ++明显不同。有关使用C编程的问题不在主题范围内,将被关闭或迁移。考虑改用Stack Overflow问您的问题。




2
如何停止和检测叉子炸弹
#include <stdlib.h> #include <unistd.h> int main() { while(1) fork(); } 这是叉炸弹的代码。 在我们学院,我们通过telnet进行连接,即客户端服务协议。大约有100个系统连接到服务器。突然,我们看到服务器变慢,一段时间后崩溃了。我知道某人实施了一个叉子炸弹。 我们如何检测到在哪个系统上实施了分叉炸弹?我们如何阻止它? 一种方法是限制单个用户可能拥有的最大进程数。是否有任何方法可以停止它并知道它是从哪个系统实现的?


1
emacs — C / C ++跳转到包含块的开头
在emacs中编辑C或C ++文件时,我希望能够转到包含的代码块的开头。我原本希望找到一个c-beginning-of-block函数,但是,据我所知,不存在这样的函数。例如,我可能正在编辑以下丑陋的C代码: void myFunction() { if (something) { //<--- I want to jump to this brace! // do lots of stuff if (stuff) { // stuff } // more stuff // ... // I want to put my cursor somewhere on this line <--- // (anywhere just outside the following …
10 emacs  c++  c 

3
在GDB中,如何直接跳到最顶层的调用堆栈帧?
我有一个C程序,它在深入到无限递归混乱之后会出现错误。在GDB中回溯过程是没用的,因为调用堆栈帧至少有 1000帧深,而重复的函数调用是四个常见的递归函数调用的系列(因此断点似乎无用)。重复调用backtrace只是一遍又一遍地读出四个函数名。在我看来,向上“向上”向上......会让我更高,所以我可以看到这种模式最初开始发生的地方,但似乎从最顶层的呼叫开始会更有效率堆栈框架和降低相反,因为我的预感是无限递归在过程的早期开始。如果调用堆栈总共有N帧,我知道我可以做到 gdb>> up N 到达堆栈的顶部(第N帧),但问题是我不知道N.是否有命令查找调用堆栈中的总帧数?或者,是否有一个灵活的内置GDB命令用于跳转到最顶层的帧?在我看来,最顶层的框架应该是main()函数 - 我可以利用这些知识到达最顶层的框架吗?
9 debug  c  gdb 

2
`sizeof` C函数的手册页在哪里?
怎么没有sizeofC函数的手册页? $ man 3 sizeof No manual entry for sizeof in section 3 $ man sizeof No manual entry for sizeof 我确实看到其他C函数的man页面,malloc如果我运行man 3 malloc和类似的命令,但没有sizeof。
9 linux  c  man 

3
为什么不'>'从gcc重定向错误消息?
我将以下程序存储在new.c中 int main() { a; return 0; } 它返回一条错误消息。我想将此消息发送到文件。所以我用下面的命令 gcc new.c > temp.txt 但是我仍然在终端上得到输出。我正在使用Ubuntu 13.04。我该如何运作?
9 c  shell  gcc 


2
如何用打补丁的UDF文件系统/坏扇区复制DVD?
我尝试了dd,dd_rescue和ddrescue,都失败了。 由于AnyDVD使光盘可以在一秒钟内在Win7主机上复制,因此它应该不会太困难。它说UDF文件系统已打补丁,奇怪的是,它还说没有坏扇区。整个DVD将在10分钟内复制完毕。AnyDVD会做什么? 在VirtualBox的来宾WinXP中运行时,AnyDVD报告相同的情况,但复制时遇到坏扇区。在本地Win7上没问题。我猜AnyDVD对DVD驱动器没有足够的控制,并且Linux主机尝试读取光盘时已经出现了问题。 dd被骗了,它完成了,但是只生成一个小文件并声明它已完成。 dd_rescuse和ddrescue抱怨读取错误,并且运行缓慢。这些工具在10分钟内只能复制几MB。 为什么会这样,为什么这些工具会失败? 如何将自己的DVD复制到硬盘上以便以后播放? 我正在寻找一种永久解决方案,最好是在Linux主机上,但它可能涉及VirtualBox和WinXP,以及免费软件/共享软件工具。只要解决方案仅涉及开源/免费软件工具,而不涉及共享软件,本机窗口也是可以接受的。 相关问题: 从具有坏扇区的DVD复制数据(在我的问题迁移后找到了这个) 从光学介质恢复而忽略读取错误 如何将有缺陷的DVD中的数据复制到硬盘上? 更新:事实证明,我陷入了太多的困境。我最终使用了AnyDVD。

2
在记事本++中转到其他文件中的C函数定义
使用SourceCookifier插件在Notepad ++ 5.6.7(Unicode)上编辑C项目时,可以按Ctrl + Shift + Enter转到光标所在的函数的定义,但前提是该光标位于同一文件中。 如果它在另一个文件中(例如本地或使用SourceCookifier(首选)的extern)或另一个插件,如何定义它?
8 notepad++  plugins  c  code 


2
使用这个C ++库
我正在尝试使用一个调用C ++库的可执行文件(用C语言编写)。我收到了这个错误 Windows Server 2008 框: Faulting application name: sample.exe, version: 0.0.0.0, time stamp: 0x4d668157 Faulting module name: MSVCR90.dll, version: 9.0.30729.4974, time stamp: 0x4b7a226f Exception code: 0xc0000417 Fault offset: 0x0002fc96 Faulting process id: 0xf10 Faulting application start time: 0x01cbd45775cc7011 Faulting application path: C:\Bprobe\sample.exe Faulting module path: C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.4974_none_50940634bcb759cb\MSVCR90.dll Report Id: b37b5e67-404a-11e0-b69c-00155d2fb513 …
1 c++  c  windows 

1
如何知道处理器核心在哪个插槽上?
我有一个双插槽8核系统,一个插槽有4核,另一个插槽有另外4核。我如何通过来找到哪个核心位于哪个套接字上/proc/cpuinfo。例如,在这里,处理器核心7在哪个插槽上? processor : 7 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Xeon(R) CPU E5420 @ 2.50GHz stepping : 10 cpu MHz : 2500.012 cache size : 6144 KB physical id : 1 siblings : 4 core id : 3 cpu cores : 4 …
1 c  linux  64-bit  multi-core 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.