SQLite与C结合
SQLite官方网站例子:
#include <stdio.h>
#include <sqlite3.h>
static int callback(void *NotUsed, int argc, char **argv, char **azColName){
int i;
for(i=0; i<argc; i++){
printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL");
}
printf("\n");
return 0;
}
int main(int argc, char **argv){
sqlite3 *db;
char *zErrMsg = 0;
int rc;
if( argc!=3 ){
fprintf(stderr, "Usage: %s DATABASE SQL-STATEMENT\n", argv[0]);
exit(1);
}
rc = sqlite3_open(argv[1], &db);
if( rc ){
fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
sqlite3_close(db);
exit(1);
}
rc = sqlite3_exec(db, argv[2], callback, 0, &zErrMsg);
if( rc!=SQLITE_OK ){
fprintf(stderr, "SQL error: %s\n", zErrMsg);
sqlite3_free(zErrMsg);
}
sqlite3_close(db);
return 0;
}
用gcc编译
gcc -lsqlite3 sqlite.c -o sqlite
运行时./sqlite ab.db 'SQL 语句'
相关文档:
I2C是Phillips开发的2线的串行总线协议。通常应用在嵌入式系统中让不同的组件通信,PC主板可以通过I2C来与不同的传感器通信。这些传感器通常报告风扇速度,处理器温度和整个硬件系统的信息,这个协议也可以用在RAM chips上,向操作系统提供DIMM的信息。
在2.0时I2C的kernel源码不在内核里的,2.4内核包括了一点对I2C的支持 ......
最近在看Linux 2.6.21内核的I2C驱动,也在网上查了一下资料,有错也有对,有些心得,记录下来吧。里面认识或许多有不当之处,还恳请指正。
1. I2C 协议
1.1 I2C总线工作原理
I2C总线是由数据线SDA和时钟SCL构成的串行总线,各种被控制器件均并联在这条总� ......
1 引言
Linux操作系统因具有源代码公开、便于裁减、有广泛的处理器支持等优点,成为当前嵌入式系统的热门选择。基于I2C总线的键盘扩展设备主要用于满足嵌入式设备中对多按键的需求,驱动程序在系统启动时对硬件进行初始化。在系统启动后实现硬件和应用程序之间的数据交互。针对S3C2410微处理器和键盘扫描管理器件,� ......
文章作者:Slyar
先看两个代码,第一个是C程序,第二个是C++程序,除了头文件不同以外其他的都一样。
//demo.c
#include <stdio.h>
int foo();
int main()
{
int a;
foo(a);
return 0;
}
int foo(int a)
{
}//demo.cpp
#include <iostream>
int foo();
int main()
{
in ......
1. 初始化一个连接句柄
MYSQL *mysql_init(MYSQL *);
正确:返回一个指向新分配的链接句柄结构的指针
错误:NULL
注:该函数的传入参数通常为NULL即可。
2. 建立物理连接
MYSQL *mysql_real_connect(MYSQL *connect ......