C程序中的函数格式

我正在编写一些函数来处理C中的字符串并返回字符串中的提取.您对从函数返回值的好样式有何看法?参考SteveMcConnell’sCodeComplete,他建议我使用格式如下:我正在考虑的替代方案是:使用以下命令返回函数的结果(选项2):使用以下命令返回函数的状态(选项3):在上面的选项2中,我将从my_function返回一个局部变量的地址,但我的调用函数将立即使用该值,所以我认为这是正常的,并假设内存位置没有被重用我错了).这是个人风格和偏好还是我应该考虑其他问题?

如何将C#WCF DataContract序列化/反序列化到/从XML

我正在开发将被多个不同客户端应用程序使用的WCF服务.为了使一个功能起作用,服务器需要将XML文件读入到C#DataContract中,然后传递给相关客户端.据MSDN网站了解,这是可能的,但我找不到任何完整的例子.特别是,该网站谈到一个“流”参数,我还没有得到.我的数据合同有一个属性字段,它是具有多个简单属性字段的另一个数据契约的列表.例如我的课程看起来像这样.解决方法这是一个例子

我可以使用纯本机C为windows 8 metro编写应用程序吗?

对于本机c,我的意思是,不是托管c,不是cli,不是微软的任何特殊东西,我可以:1)获得高性能2)使用现有的c代码库和引擎3)编写跨平台代码它不需要完全本机c,我可以使用托管代码来执行ui的事情,比如ios中的object-c和android中的java,但是除了接口之外,我可以使用本机c代码吗?

c – boost可选和std :: experimental可选赋值之间的区别

通常,当一个函数返回boost::optional时,我看到很多人返回一个空括号{}来指定一个空值,它运行正常并且比返回boost::none更短.我尝试做类似于清空boost::optional的事情,但是当在右侧调用带有空括号的复制赋值运算符(或者很可能是移动赋值op)时,空括号将转换为int然后将该值分配给可选项,因此我最终将变量设置为0,而不是我期望的空值.这是一个示例https

在Objective-C枚举中查找整数值

在Objective-C中是否可以查看int值是否在特定的枚举中?或至少解决方法没有比做更简单的方法了通常,C对于执行动态事物或反映类型并不是很有帮助,而枚举是C功能.

如何杀死pid不断变化的进程?

我知道我可以使用技巧ifexit;更改当前进程的pid.因此,以下程序的pid变化非常快.如何杀死这样的进程?有没有比执行大量的killallprocname更好的方法,直到能够在它之前运行kill()?我知道它不是一个’进程’,而是每个运行几微秒的许多进程.我发现列出进程的唯一方法是执行ps-A|grepprocname几次,直到一个显示一些输出.为什么不总是列出流程?解决方法这样的过程被系统管理员称为“彗星”.进程组ID在fork上不会更改,因此您可以通过向进程组发送信号来终止它.

内存重叠是如何发生的以及如何控制?

在阅读关于memmove的内容时,我读到它可以处理MEMORYOVERLAPS但我无法知道两个字符串之间如何发生内存重叠,以及该函数如何仍能正确复制内存块.解决方法“记忆重叠”本身不会发生.你可以为memmove函数提供重叠的内存区域.将两个指针放入同一个数组中,您可以很容易地得到重叠的内存区域.当然,您也可以通过联合轻松创建重叠对象.目前尚不清楚问题的第二部分是什么意思.你在哪里看到这个问题?

c – 花式指针是什么样的?

为什么我不能在这种情况下使用常规指针?解决方法花哨的指针只是一个像指针一样但不是指针的术语.以一个迭代器为例.几乎所有迭代器都是自定义类类型,但它们的行为就像一个指针换句话说:一个像指针一样的抽象是一个奇特的指针.

c – 浮点算术运算的精度是多少?

考虑下面两个非常简单的乘法:默认情况下,乘法是否以高于操作数的精度完成?我的意思是,在第一次乘法的情况下,它是以双精度完成的,如果在x86架构中第二次,它是以80位扩展精度完成的,或者我们应该在表达式中将操作数转换为更高的精度,如下所示?其他操作怎么样?