//【C++基础】字符数组和字符指针.cpp//剑指offer上的这段话://为了节省内存,c/c++把常量字符串放到单独的一个内存空间。但是当几个指针赋值给相同的常量字符串时,它们实际上会指向相同的内存地址// #include "stdafx.h" #include< ...
char str abc 的含义是定义一个char型数组str ,初始化为abc。 abc 是一个常量,应该保存在常量存储区。那么是不是str 就等于 abc 的地址呢 当然不是 str 是一个变量,保存在栈中,这句话的意思是在栈中申请大小为 的空间,保存 abc 包括 。同理, char str abc 也是在栈中申请了额外的空间保存 abc ,也就是说,现在有 个 abc 字符串,分别保存在 ...
2018-01-10 16:40 0 1340 推荐指数:
//【C++基础】字符数组和字符指针.cpp//剑指offer上的这段话://为了节省内存,c/c++把常量字符串放到单独的一个内存空间。但是当几个指针赋值给相同的常量字符串时,它们实际上会指向相同的内存地址// #include "stdafx.h" #include< ...
c++中数组的名字是一个地址常量,不可修改;指针是一个地址变量,可以修改。 void fun_ptr(int *test) {//指针为形参 for (int i = 0; i < 10; i++) { test[i] = 0; } } void fun_array ...
函数中的数组 1. p是一个数组,是一个局部变量,说明这个函数执行完毕之后p数组中的值都被销毁了 如果单独使用p,则p表示这块数组的首地址。函数返回值按值传递是p,仅仅传递p的地址,而p数组中的内容都被销毁了。 2. 常量区的字符不能修改。 3. ...
原文:http://www.cnblogs.com/ddx-deng/archive/2012/12/16/3755862.html 第一个结论: #include "iostream.h" ...
1.数组跟指针的区别 数组要么在静态存储区被创建(如全局数组),要么在栈上被创建。数组名对应着(而不是指向)一块内存,其地址与容量在生命期内保持不变,只有数组的内容可以改变。 指针可以随时指向任意类型的内存块,它的特征是“可变”,所以我们常用指针来操作动态内存。指针远比数组灵活,但也 ...
哎,由于上课的时候没有听课,导致指针这里真的是似懂非懂,虽然对写代码影响不大,但是总是精确度下了一个档次,所以今天趁机把这写个玩意儿弄明白点,省的以后每次都得查。咱们不求文章长,只求内容清楚~ 如果有谁看出了里面有什么问题,请帮忙指出来,免得误导别人~饺子在此先说声谢谢了~ 其实关于数组 ...
在做面试100题中第21题时,发现char *astr="abcdefghijk\0";和char astr[]={"abcdefghijk"};有点区别,以前一直以为是一样的,但是在该程序中采用字符串指针运行一直出错。后来在网上查查,果然发现大大的不同。 展示如何出错 分析:当你需要修改 ...
一、定义和初始化数组 1. int array[10]; 2. const int a = 10; int array[a]; 3. int array[f()]; //当f()的返回值是一个常量时正确 4. int array[10 ...