/*
函数(方法):
函数的作用:提高功能代码的复用性。
需求:做两个数的加法功能
目前存在的问题:以下的代码都是在做一个加法功能,而
这里加法功能的代码目前是没有任何的复用性的。
解决方案:如果一个功能的代码被复用起来,那么这时候可以把这里的功能代码封装起来,
在java中把功能代码封装起来的是以函数的形式体现的。
函数定
转载
2023-07-06 20:02:51
152阅读
安装PostgreSQL 64 笔记
下载地址:
32位源代码
ftp://ftp.postgresql.org/pub/source/
64位官方下载
http://www.enterprisedb.com/downloads/postgres-postgresql-downloads
###################################
原创
2012-02-06 17:20:24
875阅读
#include <stdio.h>#include <malloc.h>#pragma warning(disable:4996)int *addToArrayForm(int *A, int ASize, int K, int* returnSize){ int num = K; int size = 0; while (num) { size++; num /= 10; } int n = size > ASize ? size+1 : AS
原创
2022-01-10 14:43:20
74阅读
1,libc(Linux下的ANSI C的函数库)char * strcat(char * dest, const char * src){ char *tmp = dest; while (*dest) dest++; while ((*dest++ = *src++) != '\0') ; return tmp;}2,微软char* strcat ( char * dst , const char * src ){char * cp = dst;while( *cp )cp+...
转载
2012-11-08 08:23:00
237阅读
2评论
1,微软实现C:\Program Files\Microsoft Visual Studio 10.0\VC\crt\src\strcat.cchar * strcpy(char * dst, const char * src){ char * cp = dst; while( *cp++ = *src++ ) ; /* Copy src over dst */ return( dst );}2,林锐《高质量C++/C编程指南》#include <assert.h>char *strcpy(ch...
转载
2012-11-05 21:29:00
458阅读
2评论
# 深入解析 Python 的 `math.sqrt()` 函数
在数据科学、人工智能以及其他许多领域中,平方根的计算是一个非常常见的操作。为了便于这些计算,Python 提供了一个内置的 `math` 模块,其中包含了 `sqrt()` 函数。这篇文章将深入探讨 `math.sqrt()` 函数的源代码,使用示例,以及它在实际应用中的重要性。
## `math.sqrt()` 的简介
`m
简单的c语言加法运算
原创
2022-09-11 13:11:43
499阅读
继续分析 setup_description();展开后:就是要把share/postgres.description 文件的内容读入到 pg_description 和 pg_shdescription/* * load description data */static voidsetup_description(void){ PG_CMD_DECL; fputs(_("loading system objects' descriptions ... "), stdout); fflush(stdout); snprintf(cmd, sizeof(cmd),.
转载
2013-07-09 08:42:00
65阅读
2评论
继续分析: setup_collation()展开:/* * populate pg_collation */static voidsetup_collation(void){#if defined(HAVE_LOCALE_T) && !defined(WIN32) int i; FILE *locale_a_handle; char localebuf[NAMEDATALEN]; int count = 0; PG_CMD_DECL;#endif fputs(_("creating...
转载
2013-07-09 08:54:00
73阅读
2评论
继续分析: /* * Make the per-database PG_VERSION for template1 only after init'ing it */ write_version_file("base/1");就是在base/1目录下,生成一个 PG_VERSION 文件。[pgsql@localhost 1]$ pwd/home/pgsql/DemoDir/base/1[pgsql@localhost 1]$ cat PG_VERSION9.1[pgsql@localhost 1]$ 接下来: /* Create the stuff we d...
转载
2013-07-08 16:34:00
46阅读
2评论
继续分析由于 我并未进行特殊的参数设置,所以(strlen(default_text_search_config) == 0) 成立。故 调用 default_text_search_config = find_matching_ts_config(lc_ctype)最后输出:The default text search configuration will be set to "english". if (strlen(default_text_search_config) == 0) { default_text_search_config = find_mat...
转载
2013-07-07 16:56:00
67阅读
2评论
继续分析:由于我使用initdb的时候,没有指定 locale,所以会使用OS的缺省locale,这里是 en_US.UTF-8 printf(_("The files belonging to this database system will be owned " "by user \"%s\".\n" "This user must also own the server process.\n\n"), effective_user); if (strcmp(lc_ctype, lc_collate) ==
转载
2013-07-07 15:33:00
51阅读
2评论
继续其实接前面,整个while循环是这样的: while ((c = getopt_long(argc, argv, "dD:E:L:nU:WA:sT:X:", long_options, &option_index)) != -1) { switch (c) { ...... } ...... }这一句,c = getopt_long(argc, argv, "dD:E:L:nU:WA:sT:X:", lo...
转载
2013-07-05 16:33:00
41阅读
2评论
开始第一段:intmain(int argc, char *argv[]){/* * options with no short version return a low integer, the rest return * their short version value */ static struct option long_options[] = { {"pgdata", required_argument, NULL, 'D'}, {"encoding", required_argument, NULL, 'E'
转载
2013-07-05 15:32:00
41阅读
2评论
继续分析: setup_conversion();展开:其实质是:运行命令:"/home/pgsql/project/bin/postgres" --single -F -O -c search_path=pg_catalog -c exit_on_error=true template1 >/dev/null传递参数:/home/pgsql/project/share/conversion_create.sql/* * load conversion functions */static voidsetup_conversion(void){ PG_CMD_DECL
转载
2013-07-09 09:19:00
32阅读
2评论
继续分析: setup_privileges();展开:这是设置权限。其cmd是:"/home/pgsql/project/bin/postgres" --single -F -O -c search_path=pg_catalog -c exit_on_error=true template1 >/dev/null其命令是:UPDATE pg_class SET relacl = E'{"=r/\\"$POSTGRES_SUPERUSERNAME\\""}' WHERE relkind IN ('r
转载
2013-07-09 09:58:00
41阅读
2评论
继续分析: if (pwprompt || pwfilename) get_set_pwd();由于我启动initdb的时候,没有设置口令相关的选项,故此略过。接下来: setup_depend();展开:就是一组sql问,送给 postgres 执行:cmd的值是:"/home/pgsql/project/bin/postgres" --single -F -O -c search_path=pg_catalog -c exit_on_error=true template1 >/dev/null/* * set up pg_depend */static void
转载
2013-07-08 17:01:00
58阅读
2评论
继续分析: /* Bootstrap template1 */ bootstrap_template1();展开:我这里读入的文件是:/home/pgsql/project/share/postgres.bki/* * run the BKI script in bootstrap mode to create template1 */static voidbootstrap_template1(void){ PG_CMD_DECL; char **line; char *talkargs = ""; char **bki_l...
转载
2013-07-08 15:44:00
116阅读
2评论
继续分析: /* Top level PG_VERSION is checked by bootstrapper, so make it first */ write_version_file(NULL);就是建立了一个 PG_VERSION的文件在我系统里,可以看到:[pgsql@localhost DemoDir]$ cat PG_VERSION9.1[pgsql@localhost DemoDir]$ 接下来:我先看看 set_null_conf 函数 /* Select suitable configuration settings */ set_null_co...
转载
2013-07-08 13:29:00
288阅读
2评论
继续分析 /* Now create all the text config files */ setup_config();将其展开:实质就是,确定各种参数,分别写入 postgresql.conf 、pg_hba.conf、pg_indent.conf 文件。/* * set up all the config files */static voidsetup_config(void){ char **conflines; char repltok[100]; char path[MAXPGPATH]; fputs(...
转载
2013-07-08 13:45:00
59阅读
2评论