C语言day3(字符串,字符数组,一级指针的典型用法)
来源:互联网 发布:网络流量分析软件 编辑:程序博客网 时间:2024/06/02 06:51
1、1级指针的典型用法
数组
字符串
//1级指针的典型用法//数组 int a[10]//字符串//1、C语言的字符串是以0结尾的字符串//2、在C语言中没有字符串类型 通过字符数组来模拟字符串//3、字符串的内存分配 堆 栈 全局区//字符数组的初始化int main01(){ //1、制定长度 char buf2[100] = {'a','b','c','d'};//其余置0// char buf3[2] = {'a','b','c','d'};//初始化的个数大于内存 //2、不指定长度 char buf1[] = {'a','b','c','d'};//buf1是一个数组 不是一个以0结尾的字符串 printf("buf2:%s\n",buf2);// abcd printf("buf2[88]:%d\n",buf2[88]);// 0 printf("Hello world!\n"); system("pause"); return 0;}
2、怎样用字符串初始化字符数组
strlen() 字符串长度 不包括‘0’
sizeof() 内存块的大小
//怎样用字符串初始化字符数组//strlen() 长度 不包括0//sizeof() 内存块的大小int main02(){ char buf3[] = "abcd"; // buf3作为字符数组 应该是5个字节 作为字符串 应该是4个字节 int len = strlen(buf3); int size = 0; printf("buf3字符的长度:%d\n",len);// 4 //buf3 作为数组 数组是一种数据类型 本质(固定大小的内存空间) size = sizeof(buf3); printf("buf3数组所占内存空间的大小:%d\n",size);// 5 { char buf4[128] = "abcd"; printf("buf4[100]:%d \n",buf4[100]);// 0 } printf("Hello world!\n"); system("pause"); return 0;}
3、通过数组下标和指针修改内存
//通过数组下标和指针修改内存int main(){ int i = 0; char *p = NULL; int size1 = 0; int size2 = 0; char buf5[128] = "abcdefg"; size1 = strlen(buf5); size2 = sizeof(buf5); printf("buf5字符的长度:%d\n",size1);// 7 printf("buf5数组所占内存空间的大小:%d\n",size2);// 128 for(i = 0; i<strlen(buf5); i++) { printf("%c ",buf5[i]);//a b c d e f g } printf("\n"); p = buf5;//buf代表数组的首元素的地址 for(i = 0;i<strlen(buf5); i++) { p = p + i;// printf("%c ",*(p+i)); printf("%c ",*p);//a b d g why } printf("\n"); //[]和*的推导过程 本质相同 //buf5[i] = buf5[0+i] ==>*(buf5+i) for(i = 0;i<strlen(buf5); i++) { printf("%c ",*(buf5+i));//a b c d e f g } printf("\n"); //指针和内存首地址的区别 { //buf5 = buf5 + 1; // error //buf5 = 0x11 // error //buf5是一个指针 只读的常量 buf5是一个常量指针 //why? //析构内存的时候,保证内存空间安全释放 } printf("Hello world!\n"); system("pause"); return 0;}
阅读全文
0 0
- C语言day3(字符串,字符数组,一级指针的典型用法)
- C语言 字符数组和字符串指针的理解
- C语言字符串指针变量与字符数组的区别
- C语言字符串指针变量与字符数组的区别
- C语言字符串指针与字符数组的区别
- C语言,结构体中字符串的声明(采用字符指针还是字符数组)
- C语言:一级指针,二级指针,三级指针,指针数组,数组指针的综合示例
- C语言:将输入的字符串(char* cp)存入字符指针数组(char * spa[])
- C语言提高-28讲: 字符串、字符数组、字符指针
- C/C++(字符串处理)字符指针、字符数组用法大总结
- C/C++(字符串处理)字符指针、字符数组用法大总结
- 11、C语言中字符数组和指针字符串的指针变量
- 对C语言中的字符串,字符数组以及用指针表示字符串的理解
- c语言中 字符数组与字符串字面值 字符数组与字符指针数组
- C语言中字符数组和字符串指针分析
- C语言中字符数组和字符串指针分析
- C语言中字符数组和字符串指针分析
- C语言中字符数组和字符串指针分析
- ls -l 运行结果的各个字段的意义
- 用VSCode写python的正确姿势
- 丢失的三个元素、网格走法
- Java对象间属性值的复制-Spring的BeanUtil
- 【SoapUI】1、API白盒测试的利器SoapUI详细教程
- C语言day3(字符串,字符数组,一级指针的典型用法)
- Java中父类与子类的加载顺序详解
- oracle-存储过程-日期加1循环
- Class.forName的作用?为什么要用?
- SQL 本地连接IP地址修改
- hdu 2159 二维费用背包
- C++ 类的大小 struct/class内存对齐问题
- 集合框架--实用类
- jsday06补充(字体大中小 结合css和js 列表list 只显示单个 和缩放)