Welcome 微信登录

首页 / 软件开发 / C语言

C语言初级讲座之循环结构

C语言初级讲座之循环结构

C语言初级讲座之循环结构2010-05-18循环结构是程序中一种很重要的结构。其特点是,在给定条件成立时,反复执行某程序段,直到条件不成立为止。给定的条件称为循环条件,反复执行的程序段称为循环体。C语言提供了多种循环语句,可以组成各种不同形式的循环结构。while语句while语句的一般形式为:while(表达式)语句; 其中表达式是循环条件,语句为循环体。while语句的语义是:计算表达式的值,当值为真(非0)时,执行循环体语句。其执行过程可用图3&md...
C语言初级讲座之转移语句

C语言初级讲座之转移语句

C语言初级讲座之转移语句2010-05-18程序中的语句通常总是按顺序方向,或按语句功能所定义的方向执行的。如果需要改变程序的正常流向,可以使用本小节介绍的转移语句。在C语言中提供了4种转移语句:goto,break, continue和return。其中的return语句只能出现在被调函数中,用于返回主调函数,我们将在函数一章中具体介绍。本小节介绍前三种转移语句。1.goto语句goto语句也称为无条件转移语句,其一般格式如下: goto 语句标号; 其...
C语言初学者的十八颗“地雷”

C语言初学者的十八颗“地雷”

C语言初学者的十八颗“地雷”2010-05-18 水木清华 何军C语言的最大特点是:功能强、使用方便灵活。C编译的程序对语法检查并不象其它高级语言那么严格,这就给编程人员留下“灵活的余地”,但还是由于这个灵活给程序的调试带来了许多不便,尤其对初学C语言的人来说,经常会出一些连自己都不知道错在哪里的错误。看着有错的程序,不知该如何改起,本人通过对C的学习,积累了一些C编程时常犯的错误,写给各位学员以供参考。1.书写标识符时,忽略了大小...
list.c - A linked list by C --- C语言实现的单向链表

list.c - A linked list by C --- C语言实现的单向链表

list.c - A linked list by C --- C语言实现的单向链表2010-06-17 csdn博客 张亮这是我实现的单向链表。单向链表很简单,可以存储任意类型的数据:整型、字符串或指针类型。但是,不要混存。除整型外,链表节点数据由调用者分配和负责释放,即调用者负责提供一个回调函数,当链表释放时,自动调用你提供的这个函数。记住:链表不分配任何用户的数据,仅分配和管理自己的私有数据,因此,分配和释放链表所存放的数据的工作必须由用户来完成。读...
一个简单的HashMap C语言实现

一个简单的HashMap C语言实现

一个简单的HashMap C语言实现2010-06-17 csdn博客 张亮用实现一个简单实用的hashmap,具有一定的实际意义。尤其我们不想使用STL里面的map<...>类的时候。我实现的这个hashmap,用来做key---value的映射,key必须是有效的字符串,value是调用者分配的任意类型的数据。这个hashmap适合在一些简单的场合下,消耗极少的资源。首先定义头文件如下:/* * hashmap.h * Gen...
(*(void(*)())0)()

(*(void(*)())0)()

(*(void(*)())0)()2010-06-17(*(void(*)())0)(),这是在C陷阱与缺陷中,关于解决计算机开机启动后,硬件读取首地址为0位置的子例程的代码。先看(*fp)(),fp是一个函数指针,*fp就是该指针所指向的函数,(*fp)()就是调用该函数的方式。我们按照题目要求假设可以的话,则字面上可以写成(*0)();但是,正如(*fp)(),运算符*必须要一个指针来作操作数,并且是函数指针,这样经过运算符*作用后的结果才能作为函数被...
用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],下...
<< 51 52 53 54 55 56 57 58 59 60 >>