#include <stdio.h>
exec sql begin declare section;
char userid[11]="hr/oracle";
char std_name[10];
int std_number;
int dept_number;
exec sql end declare section;
char temp[3];
void sql_error();
#include <sqlca.h>
main()
{
std_number=060415;
exec sql whenever sqlerror do sql_error("oracle error");
exec sql connect :userid;
printf("connect.\n");
exec sql declare gxj_cursor cursor for
select last_name
from employees
where employee_id=:dept_number;
printf("employee number?");
gets(temp);
dept_number=atoi(temp);
exec sql open gxj_cursor;
printf("student name\n");
printf("----------------------------\n");
exec sql whenever not found do break;
while(1)
{
exec sql fetch gxj_cursor into :std_name;
printf("%s\n",std_name);
}
exec sql close gxj_cursor;
exec sql commit work release;
exit(0);
}
void
sql_error(msg)
char * msg;
{
char buf[500];
int buflen,msglen;
exec sql whenever sqlerror continue;
exec sql rollb ......
当今世界科学技术飞速发展,尤其以通信、计算机、网络为代表的互联网技术更是日新月异,令人眼花燎乱,目不睱接。由于计算机互联网在政治、经济、生活等各个领域的发展、运用以及网络的迅速普及和全社会对网络的依赖程度,计算机网络已经成为国家的经济基础和命脉,成为社会和经济发展强大动力,其地位越来越重要。但是,由于主流技术研发企业和用户对“B/S”和“C/S”技术谁优谁劣、谁代表技术潮流发展等等问题的争论不休,已经给检察机关使用“OA(办公)”和“案件管理”软件工作开展带来困惑,本文就此两项技术发展变化和应用前景做些探讨,供同行参考。
一、什么是C/S和B/S
要想对“C/S”和“B/S”技术发展变化有所了解,首先必须搞清楚三个问题。
第一、什么是C/S结构。
C/S (Client/Server)结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Se ......
关键字:UTC(世界标准时间),Calendar Time(日历时间),epoch(时间点),clock tick(时钟计时单元)
1.概念
在C/C++中,对字符串的操作有很多值得注意的问题,同样,C/C++对时间的操作也有许多值得大家注意的地方。下面主要介绍在C/C++中时间和日期的使用方法.
通过学习许多C/C++库,你可以有很多操作、使用时间的方法。但在这之前你需要了解一些“时间”和“日期”的概念,主要有以下几个:
Coordinated Universal Time(UTC):协调世界时,又称为世界标准时间,也就是大家所熟知的格林威治标准时间(Greenwich Mean Time,GMT)。比如,中国内地的时间与UTC的时差为+8,也就是UTC+8。美国是UTC-5。
Calendar Time:日历时间,是用“从一个标准时间点到此时的时间经过的秒数”来表示的时间。这个标准时间点对不同的编译器来说会有所不同,但对一个编译系统来说,这个标准时间点是不变的,该编译系统中的时间对应的日历时间都通过该标准时间点来衡量,所以可以说日历时间是“相对时间”,但是无论你在哪一个时区,在同一时刻对同一个标准时间点来说,日历时间都是一样的。
epoch:时间点。时间点在标准C/C++中是一个整 ......
结构体和共用体的内存分配是C语言的一个难点,也是面试题中的热点。
示例1:
Union data1
{
double d;
int i;
char c1;
char c2[9];
};
sizeof(union data1)的值为16.在编译器默认设置的情况下,该共用体最大基本类型为double,它占8字节,所以此共用体以8来对齐。字符数组c2占9个字节,那么整个共用体应该占9个字节,但按照对齐原则,实际分配给它的内存为16字节。
如果是:
struct data1
{
double d;
int i;
char c1;
char c2[9];
};
sizeof(struct data1)的值为24,首先按照存储大小,该结构体所占存储空间为:8+4+1+9=22字节,这个结构体也是以8对齐,因此实际分配的是24字节。
示例2:
Union data2
......
结构体和共用体的内存分配是C语言的一个难点,也是面试题中的热点。
示例1:
Union data1
{
double d;
int i;
char c1;
char c2[9];
};
sizeof(union data1)的值为16.在编译器默认设置的情况下,该共用体最大基本类型为double,它占8字节,所以此共用体以8来对齐。字符数组c2占9个字节,那么整个共用体应该占9个字节,但按照对齐原则,实际分配给它的内存为16字节。
如果是:
struct data1
{
double d;
int i;
char c1;
char c2[9];
};
sizeof(struct data1)的值为24,首先按照存储大小,该结构体所占存储空间为:8+4+1+9=22字节,这个结构体也是以8对齐,因此实际分配的是24字节。
示例2:
Union data2
......
/* 包含C头文件 */
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
/* 包含SQLCA头文件 */
EXEC SQL INCLUDE sqlca;
EXEC SQL INCLUDE sqlda;
int main()
{
EXEC SQL BEGIN DECLARE SECTION;
int money;
char answerbuff[200];
int flag;
EXEC SQL END DECLARE SECTION;
/*
* 定义输入宿主变量:接收用户名、口令和网络服务名
*
*/
char username[10],password[10],server[10];
strcpy(username,"data_center");
strcpy(password,"data_center");
strcpy(server,"oradf1"); /*这里填写的是数据库的SID*/
/* 连接到数据库 */
EXEC SQL CONNECT :username IDENTIFIED BY :password USING :server;
if (sqlca.sqlcode==0)
&n ......
/* 包含C头文件 */
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
/* 包含SQLCA头文件 */
EXEC SQL INCLUDE sqlca;
EXEC SQL INCLUDE sqlda;
int main()
{
EXEC SQL BEGIN DECLARE SECTION;
int money;
char answerbuff[200];
int flag;
EXEC SQL END DECLARE SECTION;
/*
* 定义输入宿主变量:接收用户名、口令和网络服务名
*
*/
char username[10],password[10],server[10];
strcpy(username,"data_center");
strcpy(password,"data_center");
strcpy(server,"oradf1"); /*这里填写的是数据库的SID*/
/* 连接到数据库 */
EXEC SQL CONNECT :username IDENTIFIED BY :password USING :server;
if (sqlca.sqlcode==0)
&n ......
题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
1.程序分析:利用while语句,条件为输入的字符不为'\n'.
2.程序源代码:
#include "stdio.h"
main()
{char c;
int letters=0,space=0,digit=0,others=0;
printf("please input some characters\n");
while((c=getchar())!='\n')
{
if(c>='a'&&c<='z'||c>='A'&&c<='Z')
letters++;
else if(c==' ')
space++;
else if(c>='0'&&c<='9')
digit++;
else
others++;
}
printf("all in all:char=%d space=%d digit=%d others=%d\n",letters,
space,digit,others);
}
==============================================================
【程序18】
题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222 ......