Welcome 微信登录

首页 / 软件开发 / C语言

用C实现的一个基本COM接口IFoo(一)

用C实现的一个基本COM接口IFoo(一)

用C实现的一个基本COM接口IFoo(一)2010-06-17 C++博客 行百里者半九十把该文中实现的代码整理汇总到一个项目中。目前只是实现到一个中间阶段,重点在说明COM接口的实现原理,还没有包含类厂的部分。以后还需陆续添加类厂等高级功能。文件组成:ifoo.h COM接口IFoo,接口ID IID_IFoo 声明文件。outside.c COM接口实现。这里实现IFoo的是一个结构体COutside.util.h 一些宏定义、全局函数...
用C实现的一个基本COM接口IFoo(二)

用C实现的一个基本COM接口IFoo(二)

用C实现的一个基本COM接口IFoo(二)2010-06-17 C++博客 行百里者半九十在C实现COM接口系列1中实现的com接口IFoo与使用它的客户耦合在一起,没有实现在各自分离的模块,因此不符合模块化编程思想。本期添加类厂支持,以使接口的实现与接口的使用相分离。---------------------------------------------------类厂的作用到底是什么?将接口的实现与客户使用分离开来吗?不尽然。使用CoCreateIn...
C程序的结构化组织方式介绍

C程序的结构化组织方式介绍

C程序的结构化组织方式介绍2010-06-17在的应用领域,如通讯领域和嵌入式系统领域,一个的软件项目通常包含很多复杂的功能,实现这个项目不是一个程序员单枪匹马可以胜任的,往往需要一个 团队的有效合作,另外,在一个以C代码为主的完整的项目中,经常也需要加入一些其他语言的代码,例如,C代码和汇编代码的混合使用,C文件和C++的同时 使用。这些都增加了一个软件项目的复杂程度,为了提高软件质量,合理组织的各种代码和文件是非常重要的。组织代码和文件的目的是为了使团...
Franklin C51和A51函数的相互调用

Franklin C51和A51函数的相互调用

Franklin C51和A51函数的相互调用2010-06-17胡戎 郑玉墙1 引言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并可以调用汇编语言的子程序。用C语言设计开发微控制器程序已成为一种必然的趋势。Franklin C51是一种专门针对Intel 8051系列微处理器的C开发工具,它提供了丰富的库函数,具有很强的数据处理能力,编程中对8051寄存器和存储器的分配均由编译器自动管理,因而,通常用C51来编写主程序。然而,有时也需要在C程序...
C:位运算

C:位运算

C:位运算2010-06-17“子 孑” 博客1.负数表示-二类补数(twos complement)一般使用二类补数表示负数,最左边一位为符号位.将一个十进制负数转化为二进制符号数时,首先给这个数加1,然后取绝对值,再将其转换为二进制,最后对这个二进制求补.[1]-5[2]-4[3]4[4]0000 0100[5]1111 1011将一个负数从二进制转换为十进制,首先对其所有位求补,然后将结果转换为十进制,再改变其符号,最后再减1.[1]1111 101...
C语言数组排序小结

C语言数组排序小结

C语言数组排序小结2010-06-17c语言数组排序小结(for beginner)很多朋友是以谭浩强老师编的《教程》作为学习的入门教程的。书中涉及排序问题一般都以“冒泡法”和“选择法”实现。为了扩大视野,增加学习编程的兴趣,我参阅了有关书籍,整理了几种排序法,写出来同大家共勉。(高手们不要笑,这篇文章是写给出学者的,而且我自己也是只菜鸟,虽然内容陈旧,但值得初学者一看)。让我们先定义一个整型数组a[n],下...
C语言字节对齐详解

C语言字节对齐详解

C语言字节对齐详解2010-06-17一、什么是对齐,以及为什么要对齐:1. 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定变量的时候经常在特定的内存地址访问,这就需要各类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。2. 对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能从某些特定地址开始存取。其他平台可能...
C和C++的区别介绍

C和C++的区别介绍

C和C++的区别介绍2010-06-171. C++虽然主要是以C的基础发展起来的一门新语言,但她不是C的替代品,不是C的升级,C++和C是兄弟关系。没有谁比谁先进的说法,更重要的一点是C和C++各自的标准委员会是独立的,最新的C++标准是C++98,最新的C标准是C99.因此也没有先学C再说C++的说法,也不再(注意这个"不再")有C++语法是C语法的超集的说法。2. C++/CLI 和 C# 是微软的,它们与C和C++没有任何关系,...
C语言中使用环境变量的技巧

C语言中使用环境变量的技巧

C语言中使用环境变量的技巧2010-06-17实例1:程序readenv.c显示了在中存取环境变量的若干技巧。该程序将以与dos的set命令相同的格式打印出当前所有的环境变量,然后寻找path变量,打印出整个路径字符串。该程序中有两个重要的子程序,find_env_string(),它的主要作用是:根据从调用这传来的要求,或者从环境空间的起点开始,或者从上一次搜索後停留的地方开始,寻找随后的第一个环境字符串,具体程序清单如下。/**************...
C语言的typedef问题

C语言的typedef问题

C语言的typedef问题2010-06-171. 基本解释typedef为的关键字,作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。在编程中使用typedef目的一般有两个,一个是给变量一个易记且意义明确的新名字,另一个是简化一些比较复杂的类型声明。至于typedef有什么微妙之处,请你接着看下面对几个问题的具体阐述。2. typedef & 结构的问题当用下面的代码定...
C指针的实质

C指针的实质

C指针的实质2010-06-17最近对C/C++指针特别感冒,就详细的研究了下看下面的定义:char a[] = "Hello World";char *p = "Hello World";1.什么是地址地址本身就是一种基本数据类型,它跟整数,浮点数,字符等基本类型是一样的。指针不是类型,真正的类型是地址,指针只不过是存储地址这种数据类型的变量。打个比方,对于int i=10;10是整数,而i是存储整数的变量,指针...
用C语言加速程序进而加速硬件速度

用C语言加速程序进而加速硬件速度

用C语言加速程序进而加速硬件速度2010-09-23 天极 今天的电子设备,不管是嵌入、工业、消费、娱乐,还是通讯电子设备,它们中的应用程序,都比过去需要在更短的时间内处理更多的数据。一般来说,开发者通常会选用某种通用型处理器或数字信号处理器(DSP),对那些适应性为先的应用程序来说,通用型处理器一直都是最佳的架构选择,而同时DSP也是用于提高运算能力的首选。在许多情况中,既需要适应性,同时也需要强大的运算能力,当为了增加通用型处理器的执行能力而提高时钟频...
<< 21 22 23 24 25 26 27 28 29 30 >>