c++备忘知识

内存区域:栈:编译器自动分配,存放函数值,局部变量,自动释放。
 堆:有程序员分配的内存,void*malloc(size_t)头文件stdib.h,必须释放free(释放时若分配的空间改变就容易出错比如:char *a=(char *)malloc(6);char      *b="Hello";a=b;(浅拷贝出错,应该使用循环*a=*b;(深拷贝较麻烦)或使用strcpy头文件string.h)free(a);会出错,因为a的位置已经改变释放的不是原来分配的空间)
     c++用new和 delete:int a=new int(2)初始值是02 00 00 00.int a=new int[2]开辟两个int空间 cd cd cd cd cd cd cd cd(八个字节),释放delete[] a
 全局区(静态变量static,全局变量):初始化的全局变量和静态变量实在一块区域,未初始化的全区变量和静态变量在相邻的一块区域,程序结束后由系统释放。
 文字常量区:字符常量(+1的大小)返回首地址,用指针接受,char *chr="hellow"。不可改动(const)。
 


%a,%A 读入一个浮点值(仅C99有效)   
%c 读入一个字符   
%d 读入十进制整数   
%i 读入十进制,八进制,十六进制整数   
%o 读入八进制整数   
%x,%X 读入十六进制整数   
%s 读入一个字符串,遇空格、制表符或换行符结束。   
%f,%F,%e,%E,%g,%G 用来输入实数,可以用小数形式或指数形式输入。   
%p 读入一个指针   
%u 读入一个无符号十进制整数   
%n 至此已读入值的等价字符数   
%[] 扫描字符集合   
%% 读%符号

你可能感兴趣的:(C++,局部变量,内存,栈,全局变量)