c语言字符串指针
最近正在看c语言,在指针这块遇到了麻烦,特别是字符串指针这块,简单记录下。
字符串指针
void main()
{
char *p = "tasklist"; printf("%d\n", sizeof(p)); //4 ,指针4个字节
printf("%d\n", sizeof("tasklist")); //9个字符 tasklist\0
printf("%d\n", sizeof(*p));//1 //p存储的是常量字符串 "tasklist"的首地址,即t字符的地址
//*p = '1' //无法赋值, tasklist是指针,指针是常量无法赋值。 printf("%s\n",p); //tasklist p是指针变量的首地址
printf("%c\n",*p);//t 所以取内容 *p => 首地址的值 t
printf("%c\n",*(p+));//a 同上
printf("%c\n",*(p+));//s 同上 //printf("%x\n",p);
int *s = p; //将首地址 赋给 指针变量s
printf("%c",*s); //t ,即取地址值 }
字符串指针数组
//字符串指针数组
void main2()
{
//指针数组p 存储的元素是指针类型,即top,ll,ls都为指针类型(常量无法赋值)
char *p[] = {"top","ll","ls"};
int l = sizeof(p) / sizeof(char *);
//printf("%d", sizeof(p) / sizeof(char *));//求数组多少元素
int i = ; for (;i < l; i++) {
//i=1为例 , p[i]为top 指向 top的首地址。即t字符的地址
printf("%c\n",*(p[i])); // 打印出字符t
printf("%x,%s\n",p[i],p[i]);
} system("pause"); }
c语言字符串指针的更多相关文章
- C语言 字符串指针和字符串数组使用区别
字符串指针和字符串数组使用区别 1 #include <stdio.h> 2 #include <string.h> 3 #include <stdlib.h> 4 ...
- C语言中字符数组和字符串指针分析
这几天搞Unix上的C程序,里面用到了很多字符数组和字符串指针,我记得在学完C语言后相当一段时间里,对指针这个东西还是模模糊糊,后来工作也没怎么 用到过C,虽然网上这类的文章也有很多,还是决定自己在这 ...
- [C语言]进阶|指针与字符串
------------------------------------------------------------------------------------ 回顾:[C语言]指针与字符串 ...
- C语言回顾-字符串指针
1.字符串指针 char *变量名="字符串内容"; char ch='b'; char *p1=&ch; char *str="C Language" ...
- C语言字符串操作总结大全(超详细)
本篇文章是对C语言字符串操作进行了详细的总结分析,需要的朋友参考下 1)字符串操作 strcpy(p, p1) 复制字符串 strncpy(p, p1, n) 复制指定长度字符串 strcat( ...
- C语言字符串拷贝
C语言字符串拷贝利用指针操作,要清楚知道指针的指向 代码如下: #include <stdio.h> #include <assert.h> #include <stri ...
- C语言字符串操作常用库函数
C语言字符串操作常用库函数 *********************************************************************************** 函数 ...
- c语言字符串操作大全
C语言字符串操作函数 函数名: strcpy 功 能: 拷贝一个字符串到另一个 用 法: char *stpcpy(char *destin, char *source); 程序例: #incl ...
- C语言字符串处理
一. C语言中,为什么字符串可以赋值给字符指针变量 char *p,a='5';p=&a; //显然是正确的,p="abcd"; ...
随机推荐
- Nginx 静态资源缓存配置
示例 # Media: images, icons, video, audio, HTC location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|m ...
- trello 项目管理开启卡片图片显示
/********************************************************************************* * trello 项目管理开启卡片 ...
- debian 安装deb软件
deb包 deb包是debian,ubuntu等LINUX发行版的软件安装包,是类似于rpm的软件包,而非debian,ubuntu系统不推荐使用deb软件包,因为要解决软件包依赖问题,安装也比较麻烦 ...
- 用 dotTrace 进行性能分析时,各种不同性能分析选项的含义和用途
对 .NET 程序进行性能分析,dotTrace 能应对绝大多数的场景.在开启一个进程进行性能分析之前,我们会看到一些性能分析选项(Profiler Options).本文将介绍这几个选项的含义,并用 ...
- 编写 Target 检测 MSBuild / dotnet build 此次编译是否是差量编译
MSBuild 或 Roslyn 编译项目时均支持差量编译,毕竟为了性能.我在 每次都要重新编译?太慢!让跨平台的 MSBuild/dotnet build 的 Target 支持差量编译 一文中介绍 ...
- ppt修改默认字体
首先,在文本框中输入文字,选中文字设置为自己需要的效果,比如文字字体设置为微软雅黑,大小设置为24,颜色设置为水绿色. 鼠标移动到到输入文本框的边上,此时鼠标形状会变成十字形,单击右键,在弹出 ...
- prisma middleware 简化 graphql resolver 编写的类库
prisma 推出middleware 的目的就是保持resolver 的简洁 作用: 输入参数访问同一个resolver 决定resolver 最终的返回值 在resolver 连中捕获异常以及 ...
- hasura graphql server (haskell)构建
安装 &&运行pg(docker) version: '3.6' services: postgres: image: postgres environment: - "PO ...
- SSH学习之四 OpenSSH安全
OpenSSH是Linux/Unix下一款加密通讯软件.同一时候也是我们用来远程控制Linux/Unixserver重要的必装软件. 对于各版本号的Linux及Unix发行版而言,O ...
- 把CDLinux制作成U盘启动
因为用下了CDlinux,本来想在虚拟机上运行的.发现虚拟机跑的时候无法识别集成的笔记本网卡,坑爹啊.后来想刻碟的,发现手头上还没有现成的东西,光驱是只读的,又要用到光驱,于是想到了了用U盘,正好手上 ...