你正真了解C语言中的指针吗
来源:互联网 发布:软件开发类招聘合同 编辑:程序博客网 时间:2024/05/01 12:45
工具: Visual Studio
快捷键方式: http://www.jb51.net/softjc/129529.html
什么是指针:
C语言中,指针是我们经常见到的,一般放到基本类型后面一起表示指针的数据类型,表示一段内存地址
内存的分类:
*3区*:
- 程序区
程序的二进制文件 eg:class, so文件
静态存储区
全局变量和静态变量 eg: int i = 2;动态存储区
堆区(heap):用于程序动态分配 eg:Java 中的new一个对象,不连续的内存空间,C语言中不会被系统自动回收。不像Java中,有垃圾回收机制
栈区(stack):编译器自动分配,编译器自动申请和释放 2M, 方法一执行完就回收了
指针和数值之间的关系
数组:数组就是一块连续的内存空间,每个元素之间的距离跟数据的类型有关系
数组名就是数组的首地址(即时数组的指针)
对数组名不断的取其地址得到的还是数组的首地址
C语言中怎么表示字符串
- 用指针表示
char * p = "helloworle";//表示申请一块内存地址,用于存储字符串常亮的地址
- 用数组表示
char str1[] = "HelloWorld"; // 通过字符数组来定义字符串"HelloWorld",数组中每个存储单元存放一个字符har s[80]="abcd";或者char s[80]={"abcd"}; /*说明:自动加字符串结束标志:\0*/char s[80]={"a","b","c","d","\0"};
char *str2 = "HelloWorld"; // 通过字符指针来定义字符串"HelloWorld",指针str2指向一个存放字符串"HelloWorld"的连续地址单元的首地址#define str3 "HelloWorld"; // 通过宏定义来定义字符串"HelloWorld",等价于str3="HelloWorld"
数组的初始化
strcpy();
指针的初始化
malloc();
结构体的定义
结构体的实例化
struct MM{ char name[20]; int age;} mm = {"终端研发部",20};int _tmain(int argc, _TCHAR* argv[]){ //第一种方法初始化 MyStruct stu1 = {"终端研发部",20}; // 第二种 struct Student student2; student2.age = 27; student2.name = "asdfgsdf"; strcpy(stu2.clazz,"终端研发部"); printf("%s\n %s\n %d\n", stu1.name, student2.clazz,student2.age); system("pause"); return 0;}
报错解决方式:
_CRT_SECURE_NO_DEPRECATE
相信自己,没有做不到的,只有想不到的
如果你觉得此文对您有所帮助,欢迎入群 QQ交流群 :232203809
微信公众号:终端研发部
阅读全文
0 0
- 你正真了解C语言中的指针吗
- C语言指针,你都了解了吗?
- 带你了解C语言指针
- 浅谈 指针-你真的了解指针吗?
- 你了解C语言中的关键字volatile吗?
- 你真的需要了解多种编程语言吗?
- 你真的需要了解多种编程语言吗?
- 你真的了解.NET中的String吗?
- 你真的了解.NET中的String吗?
- 你真的了解.NET中的String吗?
- 你真的了解.NET中的String吗?
- 你真的了解.NET中的String吗----详解String
- 你真的了解.NET中的String吗?
- 你真的了解.NET中的String吗?
- 你真的了解javascript中的null和undefined吗
- 你真的了解C#中的值和引用吗?
- 你真的了解.NET中的String吗?
- 你真的了解Java中的Instanceof吗?
- 排序算法
- Linux系统怎么调整swap分区大小
- 关于android中shape的使用
- Opencv图像Mat操作
- Java高级软件工程师面试考纲
- 你正真了解C语言中的指针吗
- oracle数据库 行转列 用decode函数实现
- 数据中心的冷却中断干扰了日本的Azure Cloud云服务
- java术语(PO/POJO/VO/BO/DAO/DTO)
- spring boot 学习资料
- pyqt5&python3 Gui 入门教程 (一) 第一个窗口
- cocoapods最新使用方法
- Trepn Power Profiler工具的简单操作
- PAT-L1-008. 求整数段和