所有问题: [c]
6,556 个问题
重复使用变音符的字符串/ strlen
这是我的上一个问题的后续行动。我成功实现了用于检查变位字符的算法。下一个问题来自遍历字符串中的所有字符。我这样做是这样的: int main() { char* str = "Hej du kalleåäö"; printf("length of str: %d", strlen(str)); for (int i = 0; i < strlen(str); i++) { printf("%s ", to_morse(str[i])); } putchar('\n'); return 0; } 问题...
具有许多不同类型的堆栈
我正在制作一个需要使用两个堆栈的C程序。一个需要保留字符,另一个需要保留双打。我有两个结构,节点和堆栈: struct node { double value; struct node *next; struct node *prev; }; struct stack { struct node *last; struct node *curr; }; 问题是我需要每种类型之一。我唯一想到的就是拥有两个单独的结构(即char_node,double_node,char_stack,double_stack)。如果这是C ++,我会使用模...
为游戏优化局域网服务器
我是一个学校游戏项目的网络程序员。我们希望在一个局域网上一次最多有16个播放器。我正在使用服务器-客户端模型,并为每个加入的客户端创建一个新线程。但是,仅检查每个线程是否非阻塞端口是否已从客户端收到任何信息,这会浪费大量CPU时间。 我一直在阅读Anthony Johns和Jim Ohlund撰写的“ Microsoft Windows网络编程”。他们提到了服务器客户端应用程序的两种不同模型。 1。) 使用重叠的IO套接字选项 将重叠的结构和WorkerRoutine传递给WSARecv 调用WSAWaitForMultipleEvents()或SleepEX()将线程设置为...
GCC-将int分配给char时不应该发出警告吗?
我最近在笔记本电脑上设置了MinGW + MSYS环境,以检查Netbeans C / C ++支持的情况。一切似乎都正常,但是,在测试期间,我注意到GCC和Microsoft的cl.exe编译器之间存在差异。 这是一个示例程序: #include <stdio.h> #include <stdlib.h> #include <limits.h> int main(void) { int i_max = INT_MAX; char c_max = CHAR_MAX, c; c = i_max; printf("...
如何调试驱动程序加载错误?
我已经制作了Windows驱动程序,对其进行了编译,并尝试通过SC管理器启动它,但是我从SC管理器API中得到了系统错误: ERROR_PROC_NOT_FOUND The specified procedure could not be found. 是否可以获取有关驱动程序为何无法启动的更多信息? WinDbg还是什么?如果我注释掉DriverEntry例程中的所有代码,则驱动程序启动。 我要调用的唯一东西是另一个源模块中的过程(尽管在我自己的项目中)。我可以注释掉所有外部依赖项,但仍然遇到相同的错误。 修改: 我还尝试了不同的DDK,例如2003 DDK和Vis...
从可执行文件中提取静态链接的库
我不确定这是否可行,但给出了一个可执行文件(foo.exe),其中包含许多已静态链接的库。 是否有任何软件可以从该文件中提取可执行文件中的.lib(或.a)? 谢谢。
我想开始阅读Python源代码。我应该从哪里开始
我想开始阅读Python源代码。 我的经验 我非常了解Python和Java。我知道其他各种水平的语言,但是C / C + /都不是很好。我在大学里学习过C,但是从来没有专业编程过。 我阅读此代码的原因。 了解python的工作原理。 更好地学习C。 1对我来说比2更重要。 我应该怎么做?
C:深层复制-具有空指针的结构
我有一个下面的结构 struct teststruct { int *a; void *data; }; 是否可以对包含空指针的结构进行深层复制?我假设我无法分辨data指针指向多少字节?所以我不能malloc指定的字节数并执行memcpy。我说的对吗?
C拼图-与类型一起玩
请检查以下程序。 #include <stdio.h> struct st { int a ; } fn () { struct st obj ; obj.a = 10 ; return obj ; } int main() { struct st obj = fn() ; printf ("%d", obj.a) ; } 以下是问题 程序的输出是什么? ';'在哪里终止“ struct st”的声明? 通过ISO IEC 9899-1999 规格,声明应 以“;”结尾。 declaration-specif...
如何使用OpenGL 3.x VBO渲染动态世界?
尽管OpenGL 3.x本身的参考文献很少,但实际的OpenGL低层操作却相对简单。但是,在尝试概念化如何操纵VBO以呈现动态世界时,我遇到了严重的麻烦。 很明显,旧的立即模式方法不适用,但是从那里我应该去哪里呢?我是否编写某种场景结构,然后将其转换为一组顶点并将其流式传输到VBO,我将如何存储翻译数据?如果是这样的话,代码看起来如何明智? 基本上真的不确定如何继续。
只是对Python + Numpy实时手势识别感到好奇
我刚刚完成与我的顾问的实验会议,以前的代码是用matlab编写的,并且它以脱机模式而不是实时模式运行,所以我决定转换为python + numpy(在离线版本中),但是在实验会议后,我的顾问提出有关实时识别速度的问题,因此我对使用python + numpy进行此项目的速度有疑问。或更好的C?我的项目是关于使用电子手套(2个传感器)获取实时数据并进行数据处理,识别过程
C中的Linux日期时间/语言环境库
在Linux平台上,我需要一个小型的C语言独立库,例如在提供(2009,11,13)时将返回“星期五”。我希望它能够感知区域设置,即以用户设置的语言返回日期和月份名称。 有什么建议吗?
在C中对文件运行二进制搜索的最快方法?
例如,假设我要在文件中查找特定的单词或数字。内容按排序顺序(显然)。由于我想对文件运行二进制搜索,因此将整个文件复制到数组然后运行二进制搜索似乎是浪费时间……我已经有效地使其成为线性时间算法,因为在运行搜索之前,必须花费O(n)时间复制darn文件。 有更快的方法吗?也许有像lseek这样的东西可以用行代替字节吗? 如果没有,我最好只做线性搜索(假设我在程序的整个过程中仅一次运行搜索)?
打印从数字创建的可能字符串
给出一个10位数的电话号码,我们必须打印由此创建的所有可能的字符串。数字的映射与电话键盘上的数字完全相同。 即1,0->没有字母 对于2-> A,B,C 例如1230 助理总干事 BDG CDG AEG .... 用c / c ++解决此问题的最佳解决方案是什么?
在Windows上调试Linux专用应用程序的提示?
我正在尝试查找在开源应用程序中发现的错误的来源。 我设法在Windows机器上建立并运行,但是在查找问题所在的反汇编位置时遇到了麻烦。 我尝试了三种不同的调试器(WinDbg,OllyDbg和VisualStudio),每个调试器几乎都为我提供了相同的信息。 因此,鉴于我拥有源代码,我该怎么做才能调试实时应用程序?如果应用程序是用C编写的,我如何检查数据结构? 上面列出的调试器是否支持gcc调试符号的加载? 在我看来,我做错了什么。我真的不想尝试在优化的程序集中调试此应用...
试图用两个定界符分开,但不起作用-C
我写了下面的代码从stdin ex逐行读入。 city=Boston;city=New York;city=Chicago\n ,然后用';'分隔每一行定界符并打印每个记录。 然后在另一个循环中,我尝试用'='分隔符分割记录以获取实际值。但是由于某种原因,主循环(第一个循环)不会循环到第一个循环之外,为什么? char* del1 = ";"; char* del2 = "="; char input[BUFLEN]; while(fgets(input, BUFLEN, fp)) { input[strlen(input)-1]='123...
如何在MSVC ++ 6中声明IEEE数学函数,例如“ ilogbf”?
有人可以帮忙,告诉我如何在MSVC ++ 6中包括IEEE数学函数吗?我同时尝试了和,但仍然出现以下错误: 错误C2065:“ ilogbf”:未声明的标识符 错误C2065:“ scalbnf”:未声明的标识符
在Windows和Solaris之间以二进制格式交换数据的可能方法是什么?
有人可以帮忙告诉我,是否有可能在Windows上运行的程序和Unix上运行的其他程序之间通过Internet套接字传递数据结构(即二进制格式)? 任何想法或链接到涉及它的材料将不胜感激。预先感谢您的帮助, Mk
我正在尝试用定界符分割字符串,但是它不起作用,为什么?
我写了下面的代码从stdin ex逐行读入。 城市=波士顿;城市=纽约;城市=芝加哥\ n ,然后用';'分隔每一行定界符并打印每条记录。 但是由于某种原因,“记录”指针始终返回null。为什么? char del = ';'; char input[BUFLEN]; while(fgets(input, BUFLEN, fp)) { input[strlen(input)-1]='12321'; char* record = strtok(input, &del); ...
仅使用C的分布式系统设计
我有一个实现节点(例如p2p节点)的分布式系统的工作,这些节点中的每个节点(比如说A,B,C和D)都执行某些功能,并且需要彼此交互以进行各种操作,例如同步操作以及其他类似事物,例如15个A节点与一组5个B节点进行交互,以进入负载最少的节点的队列并获取令牌号,然后等待C将其重定向到空闲节点D,依此类推。 我对应该如何设计感到有些困惑: 我想到的协议是封装操作类型和要发送的其他内容的结构。另外,这是使用确认方案完成的,因此我可以确保另一方收到了消息。 由于我没有中央服务器,因此如何处理分布式互斥方面。我猜每个节点都复制数据,但这听起来有点太昂贵了(更不用说愚蠢了。) 在实现p...
动态编程-最大的方块
我需要在一个充满1和0的巨型文件中找到1的最大平方。我知道我必须使用动态编程。我将其存储在2D数组中。该算法对找到最大平方的任何帮助将非常有用,谢谢! 示例输入: 1 0 1 0 1 0 1 0 1 1 1 1 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 answer: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 到目前为止我的代码: int Square (Sq[int x][int y]) { if (Sq[x][y]) == 0) { return 0; } else { ...
为什么编译器无法导出字符串数组的字符串长度?
注意::此问题受此答案。 以下是有效的C代码: char myString[] = "This is my string"; 这将在堆栈上分配一个长度为18的字符串(包括char myStrings[][] = {"My 1st string", "My 2nd string", "My 3rd string"}; 个字符),并为其指定指定的值。 但是,以下内容: char myStrings[][20] = {"My 1st string", "My 2nd string", "My 3rd string"}; 无效,给出错误“数组类型的元素类型不完整”。 ...