c/c++写cgi之helloworld

最近比较闲,所以又回头来学习下c/c++, 但看来看去也没什么好学的,没什么项目,光学一门语言确实没什么好看的,那就来用c/c++写个cgi来玩玩吧,之前没做过cgi,所以这样就既可了解cgi又可复习c/c++了。 先来个c/c++的cgi hello world吧,本人是在apache下运行的啊 新建文件hello.c #include <stdio.h> main() {     printf("Content-type:text/html\n\n");     printf("Hello,World!"); } 用命令$gcc –o hello hello.c 生成 hello 然后查看apache配置文件httpd.conf, 设置为:[默认的差不多就是这样] ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" <Directory "/var/www/cgi-bin">     AllowOverride…
c/c++写cgi之helloworldRead More

make_pair

关于make_pair(1, "Test")为什么有错: 1 先声明一些东西: template <typename T1, typename T2> struct pair { T1 first; T2 second; // ... }; template <typename T1, typename T2> pair<T1, T2> make_pair(T1 const&, T2 const&);…
make_pairRead More

内存分配方式

内存分配方式有三种: (1) 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static 变量。 (2) 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。(不要用return 语句返回指向“栈内存”的指针,因为该内存在函数结束时自动消亡) char *GetString(void) { char p[] = "hello world"; return p; // 编译器将提出警告 } void Test4(void) { char *str = NULL; str = GetString();…
内存分配方式Read More

引用与指针的比较

引用和指针的区别在于下面几点: 1. 创建引用时必须初始化,而且不能初始化为null;  而指针可以不初始化,也可以初始化为null int &a; //error, references must be initialized int *p; //right int &a = NULL; //error, can't init as NULL int *p = NULL; //right 2. 引用初始化后,就不再改变; 而指针随时可以改变所指的对象。 int…
引用与指针的比较Read More

sizeof

c语言里的sizeof 是一个计算数据存储空间大小的单目运算符,它返回数据所占的字节个数, 我们可以先来看看MSND里的定义: sizeof Operator sizeof expression The sizeof keyword gives the amount of storage, in bytes, associated with a variable or a type (including aggregate types). This keyword returns a…
sizeofRead More