怎样在vs中监视char*字符串_字符串指针数据类型

一、前言

在实际开发中,特别是芯片开发中,例如智能传感器芯片,经常直接使用C语言指针数据类型来操作寄存器。那么字符串指针就是我们常见的操作。

C语言没有单独的字符串对象,它是通过数组的形式来表示字符串的:

#include

#include

int main(void)

{

char str[] = "hello world";

printf("%s",str);

printf("%c",str[1]);

}

上述字符串“hello world”共11个字符,加上结束字符“0”在内存中共12个字符。

二、通过字符指针引用字符串

#include

#include

int main(void)

{

char *str = "hello world";

printf("%s",str);

printf("%c",str[1]);

}

字符串拷贝示例:

#include

#include

int main(void)

{

char str_src[] = "hello world";

char str_desc[12],*p1,*p2;

p1 = str_src;

p2 = str_desc;

while(*p1!='0'){

p1++;

p2++;

*p2 = *p1;

}

*p2 = '0';

printf("The str_src is : %s",str_src);

printf("The str_desc is : %s",str_desc);

}

三、字符串传参

1、使用字符串的数组名传递参数

#include

#include

int main(void)

{

char s1[] = "hello world";

char s2[12];

copyString(s1,s2);

printf("s2 = %s",s2);

}

void copyString(char str_src[],char str_desc[]){

int i;

for(i = 0; str_src[i]!='0';i++){

str_desc[i] = str_src[i];

}

str_desc[i] = '0';

}

2、使用字符串指针变量

形式一:

#include

#include

int main(void)

{

char *s1 = "hello world";

char *s2 = (char *)malloc(12);

copyString(s1,s2);

printf("s2 = %s",s2);

}

void copyString(char str_src[],char str_desc[]){

int i;

for(i = 0; str_src[i]!='0';i++){

str_desc[i] = str_src[i];

}

str_desc[i] = '0';

}

形式二:

#include

#include

int main(void)

{

char *s1 = "hello world";

char *s2 = (char *)malloc(12);

copyString(s1,s2);

printf("s2 = %s",s2);

}

void copyString(char *str_src ,char* str_desc){

int i;

for(i = 0; str_src[i]!='0';i++){

str_desc[i] = str_src[i];

}

str_desc[i] = '0';

}

三、字符串拷贝函数copyString几种简写的总结

1、形式一

void copyString(char *str_src ,char* str_desc){

while(( *str_desc = *str_src)!='0'){

str_desc++;

str_src++;

}

}

2、形式二

void copyString(char *str_src ,char* str_desc){

while(( *str_desc++ = *str_src++)!='0');

}

3、形式三

void copyString(char *str_src ,char* str_desc){

while( *str_src != '0'){

*str_desc++ = *str_src++;

}

*str_desc = '0';

}

4、形式四

void copyString(char *str_src ,char* str_desc){


while( *str_desc++ = *str_src++);

}

25affb81105a0842ee918037547e87cb.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/434029.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php mysql 替换 pdo,php操作MySQL数据库之PDO方式

这篇文章主要介绍了关于php操作MySQL数据库之PDO方式 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下基本使用1)连接数据库$pdo new PDO(“mysql:hostlocalhost; dbnamedb_name”,username,password);2)执行SQL语句$pdo ->…

.NET操作Excel

一.读取Excel数据&#xff0c;并显示 1.配置文件 <configuration> <system.web> <compilation debug"true" targetFramework"4.0" /> </system.web> <appSettings> <!--连接03版本的--> &l…

AC_CHECK_LIB的工作原理

AC_CHECK_LIB就是告诉configure我们需要检查哪些lib&#xff0c;并根据检查结果做什么处理。正是在这里遇到了问题并有所收获&#xff0c;才促使我写这篇blog记录一下。问题是这样&#xff0c;我想检查一下libXv.so这个库是否存在&#xff0c;不存在的话就让configure直接退出。…

mac json格式化工具_一个在 MAC 上 iOS/Flutter 开发的辅助工具

大家好&#xff0c;我是章鱼猫。今天给大家推荐的这个开源项目&#xff0c;是来自于我们公众号读者的投稿&#xff0c;这个东西还挺好的。如果你作为读者&#xff0c;也有自己的开源项目或者你也有想推荐的开源项目&#xff0c;都可以向我们投稿&#xff0c;我们就是致力于帮助…

php 开启fsockopen函数,巧用php的fsockopen函数

这几天闲着没事&#xff0c;用PHP的fsockopen写了几个文件为我的酷我音乐盒的帐户加分。获得途径 积分音乐盒完整的听一首歌曲 1(每天最高200)音乐坊成功上传一张歌单 50(每天最高200)酷我音乐空间空间被访问1次 1(每天最高50)有人打招呼1次 2(每天最高50)有人留言(非主人) 5(每…

java中多维数组的clone容易引起误解

int[][] arr1 new int[][]{{1,2},{1,2}}; int[][] arr2 arr1.clone(); 因为arr1!arr2所以我的意图是 修改arr2 在确定修改结束后 将arr2赋给arr1依此保证在arr2修改过程中arr1不变&#xff0c;&#xff0c;&#xff0c;但神奇的是竟然变了后来才注意到虽然arr1!arr2但arr1[0]…

python编写界面遍历_python和pywin32实现窗口查找、遍历和点击的示例代码

Pywin32是一个Python库&#xff0c;为python提供访问Windows API的扩展&#xff0c;提供了齐全的windows常量、接口、线程以及COM机制等等。1.通过类名和标题查找窗口句柄&#xff0c;并获得窗口位置和大小import win32guiimport win32apiclassname "MozillaWindowClass&…

termcap-1.3.1的configure.in文件逐行分析

AC_INIT(termcap.h) 每个configure文件第一个需要调用的宏&#xff0c;他处理所有的命令行参数并且寻找源代码目录。termcap.h是包含在源代码目录下的文件&#xff0c;configure在目录中检查这些文件是否存在以确定该目录是否包含源代码。 AC_ARG_ENABLE(install-termcap, [ …

php转换图片属性a,PHP 提取图片img标记中的任意属性

/* PHP正则提取图片img标记中的任意属性 */$str PHP正则提取或更改图片img标记中的任意属性;//1、取整个图片代码preg_match(/]*?src\s*\s*(\|\")(.*?)\\1[^>]*?\/?\s*>/i,$str,$match);echo $match[0];//2、取width属性preg_match(//i,$str,$match);echo $mat…

OOP三言两语

OOP面向对象编程&#xff0c;主要特点&#xff1a;封装、继承、多态&#xff0c;一切即对象。 多态&#xff1a;编译时多态-- 方法重载 &#xff08;方法名称相同&#xff0c;签名不同&#xff09;。 运行时多态--子类override 父类的&#xff08;vitural、abstract&#xff09…

交叉编译termcap1.3.1

修改Makefile文件其中两行即可 CC gcc 改为 CC arm-linux-gcc AR ar 改为 AR arm-linux-ar 编译后生成libtermcap.a文件&#xff0c;将其拷贝到交叉工具链的lib文件夹下即可使用。

python实现数字时钟_Python 写的全屏数字时钟软件,看看还有什么改进的地方

zgzb&#xff1a;软件启动图&#xff1a; https://s1.ax1x.com/2020/09/25/096RzV.png链接&#xff1a; https://www.lanzoux.com/i2vCzgwo0xawjj5728&#xff1a;啥都不说&#xff0c;先瞎为敬。黑色字看不到呀rglee&#xff1a;这配色绝了galileo1214&#xff1a;这全屏有啥用…

php ajax无刷新分页源码,ajax实现无刷新分页(php)

投票结果function GetXmlHttpObject(){var xmlHttpnull;try{// Firefox, Opera 8.0, SafarixmlHttpnew XMLHttpRequest();}catch (e){// Internet Explorertry{xmlHttpnew ActiveXObject("Msxml2.XMLHTTP");}catch (e){xmlHttpnew ActiveXObject("Microsoft.XML…

SQL嵌套语句执行顺序

首先我们要了解一下SQL语句的执行过程。 SELECT 字段 FROM 表名 WHERE 条件表达式 那它们是按什么顺序执行呢&#xff1f;分析器会先看语句的第一个词&#xff0c;当它发现第一个词是SELECT关键字的时候&#xff0c;它会跳到FROM关键字&#xff0c;然后通过FROM关键字找到表名并…

fatal error: Python.h: No such file or directory

ubuntu下编译libxml2时&#xff0c;报错. 执行apt-get install python-dev即可

php 计划任务 不执行,CentOS 系统下 Laravel 计划任务 PHP artisan schedule:run 不执行,应该如何处理?...

服务器是centos系统&#xff0c;现在遇到一个很奇怪的问题&#xff0c;计划任务不能执行&#xff0c;本来设的是定时检查用户表&#xff0c;给当天过生日的用户发生日祝福短信&#xff0c;日志记录计划任务执行了&#xff0c;但没有短信发送&#xff0c;laravel日志中也没有记录…

(转)Win7下如何硬盘安装Ubuntu

1.下载Linux镜像及EasyBCD   以Ubuntu为例&#xff1a;http://www.ubuntu.com/desktop/get-ubuntu/download  系统引导软件EasyBCD&#xff1a;http://neosmart.net/EasyBCD/  2.设置NeoGrub启动项   1&#xff09;ubuntu下载文件放在C:\ubuntu-10.10-desktop-i386.iso&…

编译libxml2-2.6.26 __open_missing_mode 错误

调用open函数&#xff0c;因为使用open函数的时候&#xff0c;如果在第二个参数中使用了 O_CREAT&#xff0c;就必须添加第三个参数&#xff1a;创建文件时赋予的初始权。 解决方案&#xff1a;在调用open函数的那一行的参数里加个“0666”或者“0777”均可&#xff01; 如&…

卡巴斯基授权许可文件_制片方未提供电视台授权证明,构成根本违约吗?

在制作娱乐法101课程的过程中&#xff0c;需要检索很多案例&#xff0c;有时候也也看到一些似乎不太合理的判决书。在一起电视播映权纠纷中&#xff0c;合同中一般会常规约定制作方需要向电视台提交确保其在合同授权区域、授权范围、授权期限内具有合法播映权的证明文件的合同义…

月头月尾oracle取数,Oracle分析函数Over()的使用

今天为完成客户成品仓盘点的统计功能&#xff0c;做了盘点统计表&#xff0c;这个功能有点复杂&#xff0c;要将生产数据与库存的差异做成一个统计报表&#xff0c;报表要反映出差异的明细。其实&#xff0c;这个项目拖了也挺久了&#xff0c;本来客户计划用于2018年终盘点&…