char *p,申明指针变量,占用两个字节,相当于p[1]当然,这个需要看编译器的设置,VC、Dev C、VisualS...
32位系统4字节,64位系统则是8字节,所以要么题目出错了,要么是多选
(1)char *p:p是一个工作指针,可以用来对任意位置(非系统敏感区域)进 行读操作和写操作 ,一次读写一个字节(char占一个字节)。 (2)const char*p或者char const *p(因为没有const*p运算,因此const修饰的还是前面的char):可以对任意位置(非系统敏感区域)进行“只读” 操作。(“只读”是相对于char *p来说所限定...
char a[]={'a','b','c'} 这是一个字符数组,占3个字节。 char a[]="abc" 则不同,它是一个字符串,最后还有一个'\0'结束符,占4个字节
;用来声明一个数组p,数组大小为13字节。 char *p = "hello world!";用来声明一个指针p,指向“hello world!”字符串起始位置。 从存储位置来说: char p[] = "hello world!";p数组作为局部变量被存储在栈区; char *p = "hello world!"; 在这个声明中,"hello world!"被存储在文字常量区,是常量,不能...
char *p = "1234567"; 上述两个变量的内存布局分别如下: 数组a需要在内存中占用8个字节的空间,这段内存区通过名字a来标志。指针p则需要4个字节的空间来存放地址,这4个字节用名字p来标志。其中存放的地址几乎可以指向任何地方,也可以哪里都不指,即空指针。目前这个p指向某地连续的8个字节,即字符串"1234567"。
早期的微机字长一般是8位和16位,386以及更高的处理器大多是32位。目前市面上的计算机的处理器大部分已达到64位。字长由微处理器(CPU)对外数据通路的数据总线条数决定。最小可寻址单位:内存的最小可寻址单位通常都是字节。也就是说一个指针地址值可对应内存中一个字节的空间。寻址空间:寻址空间...
char类型用于表示单个字符,通常占用 1 个字节的内存空间。在处理char类型数据时,计算机会针对这个字节进行操作,因此访问速度相对较快。 整数数组则是一个包含多个整数的数据结构。数组中的每个整数通常也占用 1 个字节或更多(取决于整数类型,如int、long等)。由于数组中包含多个数据,因此在访问或修改数组元素时需要进行...
我们知道,第一段代码中:int* p=&a;定义指针变量p为int*型,p的内存空间里存放a的地址,*p指向int型的变量a,而a在内存空间中是占4个字节; 第二段代码中:char* p=&a;定义指针变量p为char*型,p的内存空间里存放a的地址(注意sizeof(char*)是4个字节,可以存放a的地址),但是*p指向的却是int型变量a的低8...
作为参数类型时没有区别,作为变量类型时有明显区别,一个是在分配一个数组,一个是在分配一个指针,...