通讯录C程序代码
#include <stdio.h>
#include <string.h> /* 程序多次调用biodkey(),应包含头文件bios.h */
#include <bios.h><br>/* 程序多次调用clrscr(),应包含头文件conio.h */
#include <conio.h>
#define MAX 100
#define PAGE 2
#define PRINT1 printf("--------------------------------------\n")
#define PRINT2 printf("NUM---NAME---AGE---MOBILE---ADDRESS\n")
#define PRINT3 printf("%d,%s,%d,%s,%s,\n",message[i].num,message[i].name,message[i].age,message[i].mobile[15],message[i].address);
int sum;
struct message_type
{<br>int num; <br>char name[15]; /* name应是数组 */
int age;<br>char mobile[15];<br>char address[30]; /* address应是数组 */ }message[MAX];
main()
{
int choice;
sum = read_message();<br>bioskey(0);
{
clrscr();
printf("\n\n\n ********通讯录管理系统********\n\n" );
printf(" 1.创建资料\n\n");
printf(" 2.输出资料\n\n");
printf(" 3.资料查询\n\n");
printf(" 4.资料添加\n\n");
printf(" 5.资料删除\n\n");
printf(" 6.资料修改\n\n");
printf(" 7.资料整理\n\n");
printf(" 0.退出系统\n\n");
printf("请选择(0-7):");
scanf("%d",&choice);
switch(choice)
{ case 1: input_message();break;
case 2: output_message();break;
case 3: inquire_message();break;
case 4: insert_message();break;
case 5: del_message();break;
case 6: revise_message();break;
case 7: sort_message();break;
case0:break;
}
}while(choice!=0);
save_message(sum);
printf("\n -以上资料已保存!-(文件名:messagenotes.txt)\n"); /*保存信息*/
save_message(int sum)
{
FILE *fp;
int i;
if((fp=fopen("messagenotes.txt","wb"))==NULL)
{
printf("读文件错误!\n");
return;
}
for(i=0;i<sum;i++)
if(fwrite(&message[i],sizeof(struct message_type),1,fp)!=1)
printf("写文件错误!\n");
fclose(fp); /* Function: input_message() */
input_message()
{
int i=0; /* 变量s无用,已删除 */
clrsrc();
printf("\n\n 录入通讯录\n"); /* 笔误 */
printf("\n -------------------------------\n");
{
print
相关文档:
CPU : ARM9 s3c2410
LCD : 规格不明(这个很无奈,但是我所知道的只有一个分辨率)
源码修改:
/linux-2.6.30.4/arch/arm/mach-s3c2410/mach-smdk2410.c
在这个文件中加入framebuffer的初始化数据结构(具体数据参照LCD技术手册)如下:
#include <mach/fb.h> ......
step one:将.pc文件预编译为.c
[ecif@localhost zyctest]$ proc sample1.pc
显示信息:
Pro*C/C++: Release 10.2.0.1.0 - Production on Tue Apr 13 14:07:05 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
&nbs ......
1.传统上,C语言要求必须在一个代码块的开始处声明变量,在这之前不允许任何其他语句。现在C99遵循C++的惯例,允许把声明放在代码块中的任何位置。然而,在首次使用变量之前仍然必须先声明它。
2.操作系统和C库通常使用以一个或两个下划线开始的名字,因些你自己最好避免这种用法。
3.C语言的名字是区分大小写的。 ......
CPU:s3c2410
OS:Linux Kernel 2.6.30.4
最近刚做完的嵌入式键盘的驱动,由于初次接触,总结一下。
首先简单说说这个键盘的实现原理,IIC总线工作原理没必要废话,s3c2410的手册中讲的很明白。硬件方面这个键盘通过一个AVR单片机(ATMEGA48)接在IIC总线上,也就是说,直接与IIC总线链接的设备并不是我们用的键盘,而是 ......
在软件开发这一高度抽象而且十分复杂的活动中,命名规则的重要性更显得尤为突出。一套定义良好并且完整的、在整个项目中统一使用的命名规范将大大提升源代码的可读性和软件的可维护性。
在引入细节之前,先说明一下命名规范的整体原则:
同一性
在编写一个子模块或派生类的时候,要遵循其基类或整体模块的命名 ......