赞了回答2015-10-22
强转(int*)才是历史遗留问题。按照gcc的编程规范,是不建议强转的。malloc出来的 “void*” 本来就是通用类型,可以直接用任意类型的指针接收,而不会有任何的编译警告。之所以大家强转,是不标准的c编译器(如vc)的写法。
回答了问题2015-10-22
首先,这个程序是错误的,在exit()的时候会在stdout上发生竞争。你要明白,发生竞争之后出现什么情况都不稀奇,所以不要深究这个原因了,没有意义,这跟stdio的实现相关。
回答了问题2015-10-22
如果写者和读者都只有一个的话,可以。但是要注意,fifo在文件系统中是可见的,要正确设置权限,防止无关进程破坏数据完整性。
回答了问题2015-10-22
看上去像是在利用插值计算freq=16000频点的信号功率
回答了问题2015-10-22
除非工作需要,没必要学习相同范式的两种语言。建议下一步学习Erlang、Lisp或者Prolog
赞了回答2015-10-22
sizeof不是函数,而是编译器提供的操作符,由编译器计算并返回一个数据结构的大小。 在这里,编译器知道arr的大小(否则它怎么为其分配内存呢?),所以能够返回正确的结果10。
回答了问题2015-10-21
面试官果然是C语言外行。memcpy(3)本来就不允许内存重叠,否则行为是undefined。当年adobe flash的一个BUG就是这个坑整出来的。
赞了回答2015-10-20
可以使用局域网外你可以直接访问到的VPN服务器,局域网内的服务器和你的电脑都连上那个VPN服务器,就可以直接访问局域网内的服务器了。 局域网内的服务器使用远程ssh端口转发,将远程服务器的某个端口转发到局域网内的服务器。 例如(局域网内的电脑上执行): {代码...
回答了问题2015-10-20
但问题是你这多个VPN之间是什么关系想好了没有?可以按路由分担流量、可以ECMP、可以Active-Standby、……这个步骤才需要想象力呢。
回答了问题2015-10-20
基本上说,用tc1 在网卡上建立一个HTB队列2 给HTB建立2个子类,一个子类的带宽是网卡全部带宽并设置成默认子类 另一个子类的带宽是1M/s3 建立过滤器规则,把源端口和目的端口等于1的流量定向到上述1M/s的子类上
回答了问题2015-07-09
根本不用考虑这个问题吧?只要你的算法能兼容不同的对齐策略就可以了。至于不同平台之间的差异,设计网络通讯协议需要考虑,而像内存池这种本地代码的话根本不必考虑,因为不可能在这台机器上申请内存给另一台机器用啊。