PostgreSQL データベースに接続するためのヘッダーを作成する libpq 関数を独自の関数にカプセル化していますが、そのうちの 1 つで、タイプ PGconn のポインターを返すと思われるタイプのエラーが発生します...
ConexionPostgres.c:32:6: aviso: la asignación crea un puntero desde un entero sin una conversión [activado por defecto]
/tmp/ccCeaewL.o: In function
main ':
ConexionPostgres.c:
( .text+0x86
): undefined reference to
セットBD'
プロトタイプのせいだと思ったので、プロトを変更してメインの直前に定義を置きましたが、何も...何が起こっているのか誰か教えてもらえますか?
Postgres libpq のドキュメントと libpq-fe.h を直接チェックしてプロトを確認しているので、何も欠落していませんが、混乱しています。これが私のコードです:
PGconn *setDB(char *conninfo)
{
PGconn *db;
db = PQconnectdb(conninfo);
if(!db)
printf("Error en conexion a la BD");
if(PQstatus(db) != CONNECTION_OK)
{
printf( "%s\n", PQerrorMessage(db));
}
else
{
return db;
}
}
int main()
{
const char *conninfo = "dbname='database' host='somehost' user='me' password='somepass'";
//char *query = "INSERT INTO productos VALUES ('1','5','235')";
PGconn *con;
con = setBD(conninfo); /* --> Here's apparently the problem */
PQfinish(con);
exit(0);
}