易截截图软件、单文件、免安装、纯绿色、仅160KB

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 语句'


相关文档:

c 语言中的传值与传引用


#include<stdio.h>
int cubeByValue(int n);
int main(){
    int number = 5 ;
    printf("The original value of number is %d\n",number);
    number = cubeByValue(number);   
    printf("The new  ......

关于C/C++函数声明中参数个数的疑问

文章作者: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 ......

C/C++单元测试理论精要(八)

第3章 怎样才能高效率测试
3.1 似是而非的高效率
 
    这一节澄清一些流行的误解或误导,一些看起来很不错的高效率,实际上是似是而非的。
全自动生成用例
    全自动生成用例是所有测试人员的期盼,好消息是,这是一种简单的技术,十年前就有了,坏消息是,这种技术作用很小。
......

Linux C MySQL数据库函数

1. 初始化一个连接句柄
    MYSQL *mysql_init(MYSQL *);
    正确:返回一个指向新分配的链接句柄结构的指针
    错误:NULL
    注:该函数的传入参数通常为NULL即可。
2. 建立物理连接
    MYSQL *mysql_real_connect(MYSQL *connect ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号