我们都知道,下面两个函数的参数实际上都是整型指针:void test1(int * p){}void test2(int p[10]){//下面这句话如果直接看汇编代码的话实际上是直接对num赋值1int num = sizeof(p)/sizeof(p[0]);}编译器并不会把p[10]当做数组来处理,但是如果真的需要以一个数组为参数该怎么办呢?可用下面的方式:void test3(int (&p)[10]){//下面这句话如果直接看汇编代码的话实际上是直接对num赋值10int num = sizeof(p)/sizeof(p[0]);}也就是传数组的引用。
Linux下怎么显示unicode字符?
wchat_t text[5]=L”test”;
调用wprintf(”%ls”,text);
注意:
1.这里wprintf的格式字符串中要加l。
2.在linux中,wchar_t是4字节,这点和windows下不一样,windows下是2字节。
?
Linux的虚拟地址空间也为0~4G。Linux内核将这4G字节的空间分为两部分。将最高的1G字节(从虚拟地址0xC0000000到0xFFFFFFFF),供内核使用,称为“内核空间”。而将较低的3G字节(从虚拟地址0x00000000到0xBFFFFFFF),供各个进程使用,称为“用户空间)。因为每个进程可以通过系统调用进入内核,因此,Linux内核由系统内的所有进程共享。于是,从具体进程的角度来看,每个进程可以拥有4G字节的虚拟空间
与一个赏心悦目的人错肩,真真实实的活着,也就够了。