C语言中字符数组的初始化与赋值
1.字符数组初始化在C语言中字符串是当做字符数组来处理的所以字符串有两种声明方式一种是字符数组一种是字符指针。char parr[] zifuchuanshuzu; char charr[] { z,i,f,u,c,h,u,a,n,s,h,u,z,u };这是字符数组初始化的两种方式但是这两种方式其实是不等价的他们的数组长度不同。#include int main() { char parr[] zifuchuanshuzu; //与charr[]不等价 char charr[] { z,i,f,u,c,h,u,a,n,s,h,u,z,u }; //等价于charr[] char charr_test[] { z,i,f,u,c,h,u,a,n,s,h,u,z,u ,\0}; int num_parr sizeof(parr); int num_charr sizeof(charr); int num_charr_test sizeof(charr_test); printf(The parr[] is : %s\n, parr); printf(The size of parr[] is : %d\n\n, num_parr); //与charr[]不等价 printf(The charr[] is : %s\n, charr); printf(The size of charr[] is : %d\n\n, num_charr); //等价于charr[] printf(The charr_test[] is : %s\n, charr_test); printf(The size of charr_test[] is : %d\n, num_charr_test); return 0; }运行结果如图从结果可以看到第二种初始化方式打印的结果有问题但是字符数量没有问题。这是因为字符串默认是以’\0’结束的第二种初始化方式中没有’\0’,而我们以字符串方式打印所以出错第一种第一方式是系统自动添加了’\0’;我们可以看到其字符数量是15与第三种相同。下面的初始化方式是错误的char parr[15]; parr[]zifuchuanshuzu;错误的原因C语言并没有提供可以直接操作字符串的运算符“”可以用于其他数据类型的赋值但是不可以直接给字符串赋值。char *strcpy(char *dest,const char*src);头文件string.h和stdio.h功能将src地址开始且包含’\0’结束符的字符串复制到以dest开始的空间。注字符数组dest必须是数组名形式src可以是数组名也可以是字符串常量可以用strcpy将src的前若干个字符复制到字符数组中char *strcat(char *dest,const char *src);头文件string.h功能把src中的内容复制到dest结尾处(覆盖’\0’)。注src和dest内存区域不可以重叠dest必须有足够的空间来容纳src字符数组dest必须是数组名形式src可以是数组名也可以是字符串常量返回指向dest的指针#include #include int main() { //利用strcpy为字符数组赋值 char parr[40]; strcpy(parr,zifuchuanshuzu); printf(The parr[] is : %s\n\n, parr); //赋值字符串的一部分 char charr[] _test_strcat_redundance; char tarr[13]; charr[12] \0;//复制charr的前12个字符 strcpy(tarr, charr); printf(The tarr[] is : %s\n\n, tarr); //字符串链接 strcat(parr, charr); printf(The parr and tarr[] is : %s\n, parr); return 0; }结果2.字符指针在C语言中我们也可以使用字符指针来存储字符串。char* strzifuchuanshuzu;C语言对字符串常量是按照字符数组来处理的在内存中开辟了一个字符数组用来存放字符串常量程序在定义字符串指针变量str时只是把字符串首地址赋值给str。输出printf(%s\n,str);系统首先输出str指向的字符而后自加1直至遇到’\0’;与数组的输出方式相同。char *str; strzifuzhizhen;对于字符指针这种赋值方式是正确的。与字符数组不同。3.总结 以上是个人理解有错误的地方欢迎指正。

相关新闻

5分钟掌握ttkbootstrap主题系统:打造现代化Tkinter界面的终极指南

5分钟掌握ttkbootstrap主题系统:打造现代化Tkinter界面的终极指南

5分钟掌握ttkbootstrap主题系统:打造现代化Tkinter界面的终极指南 【免费下载链接】ttkbootstrap Modern themes for Tkinter. Sleek, responsive styles inspired by Bootstrap. Includes ready-to-use widgets, 30 themes, and tools for building beautiful, cro…

2026/8/7 18:13:49 阅读更多 →
Outfit字体:为现代数字设计量身打造的专业级开源字体解决方案

Outfit字体:为现代数字设计量身打造的专业级开源字体解决方案

Outfit字体:为现代数字设计量身打造的专业级开源字体解决方案 【免费下载链接】Outfit-Fonts The most on-brand typeface 项目地址: https://gitcode.com/gh_mirrors/ou/Outfit-Fonts 在当今数字设计领域,字体选择往往成为项目成败的关键因素。设…

2026/8/7 18:13:49 阅读更多 →
无需Root的Android虚拟定位神器:GoGoGo摇杆控制全解析

无需Root的Android虚拟定位神器:GoGoGo摇杆控制全解析

无需Root的Android虚拟定位神器:GoGoGo摇杆控制全解析 【免费下载链接】GoGoGo 一个基于 Android 调试 API 百度地图实现的虚拟定位工具,并且同时实现了一个可以自由移动的摇杆 项目地址: https://gitcode.com/GitHub_Trending/go/GoGoGo 想要在…

2026/8/7 18:13:49 阅读更多 →

最新新闻

Minimal Chat Client扩展开发:如何为开源聊天系统贡献插件

Minimal Chat Client扩展开发:如何为开源聊天系统贡献插件

Minimal Chat Client扩展开发:如何为开源聊天系统贡献插件 【免费下载链接】client Client library for Minimal Chat 项目地址: https://gitcode.com/gh_mirrors/client3/client Minimal Chat Client是一个轻量级的开源聊天系统客户端库,通过扩展…

2026/8/7 19:09:07 阅读更多 →
FDE 为什么是 AI 落地时代最重要的职业?!

FDE 为什么是 AI 落地时代最重要的职业?!

过去两年,AI行业最热闹的地方一直在模型层。参数规模、推理能力、代码能力、上下文长度,每隔一段时间都会出现新的榜单和新的最强模型。企业也在追赶,从接入聊天机器人,到搭建知识库,再到尝试让Agent调用工具、处理真实…

2026/8/7 19:09:07 阅读更多 →
电气工程师真题及答案解析1

电气工程师真题及答案解析1

目录 一、单选题 1、以下元器件中一般不属于专门的电路防护类器件的是 2、在相对介电常数为4,损耗角正切为0.02的FR4板材内布设差分带状线,假设其中一条比另一条长3mm,则产生的skew误差约为 3、高速信号的损耗增加在示波器测试的表现为: 4、哪个不是采用加速计原理设计…

2026/8/7 19:09:07 阅读更多 →
giget完全指南:从安装到高级用法的终极教程

giget完全指南:从安装到高级用法的终极教程

giget完全指南:从安装到高级用法的终极教程 【免费下载链接】giget ✨ Download templates and git repositories with pleasure! 项目地址: https://gitcode.com/gh_mirrors/gi/giget giget是一款功能强大的模板和Git仓库下载工具,它能让你轻松下…

2026/8/7 19:09:07 阅读更多 →
Gramateria桌面应用开发指南:用Electron JS将Web项目打包成跨平台应用

Gramateria桌面应用开发指南:用Electron JS将Web项目打包成跨平台应用

Gramateria桌面应用开发指南:用Electron JS将Web项目打包成跨平台应用 【免费下载链接】gramateria Drag and drop web builder with Grapes js, Bootstrap 5, Electron js and Netlify deployment. 项目地址: https://gitcode.com/gh_mirrors/gr/gramateria …

2026/8/7 19:09:07 阅读更多 →
深度解析Perseus:碧蓝航线原生库补丁开发实战指南

深度解析Perseus:碧蓝航线原生库补丁开发实战指南

深度解析Perseus:碧蓝航线原生库补丁开发实战指南 【免费下载链接】Perseus Azur Lane scripts patcher. 项目地址: https://gitcode.com/gh_mirrors/pers/Perseus Perseus是一个专为碧蓝航线(Azur Lane)游戏设计的原生库补丁项目&…

2026/8/7 19:08:06 阅读更多 →

日新闻

为什么scrcpy成为Android投屏的终极解决方案:完整实战指南

为什么scrcpy成为Android投屏的终极解决方案:完整实战指南

为什么scrcpy成为Android投屏的终极解决方案:完整实战指南 【免费下载链接】scrcpy Display and control your Android device 项目地址: https://gitcode.com/GitHub_Trending/sc/scrcpy 想要将Android手机屏幕完美投射到电脑上,享受大屏操作的自…

2026/8/7 0:00:19 阅读更多 →
如何在5分钟内掌握Tom Select:打造现代化表单选择器的终极指南

如何在5分钟内掌握Tom Select:打造现代化表单选择器的终极指南

如何在5分钟内掌握Tom Select:打造现代化表单选择器的终极指南 【免费下载链接】tom-select Tom Select is a lightweight (~16kb gzipped) hybrid of a textbox and select box. Forked from selectize.js to provide a framework agnostic autocomplete widget wi…

2026/8/7 0:00:19 阅读更多 →
5分钟快速上手:NSZ压缩工具终极指南,轻松管理Switch游戏文件

5分钟快速上手:NSZ压缩工具终极指南,轻松管理Switch游戏文件

5分钟快速上手:NSZ压缩工具终极指南,轻松管理Switch游戏文件 【免费下载链接】nsz NSZ - Homebrew compatible NSP/XCI compressor/decompressor 项目地址: https://gitcode.com/gh_mirrors/ns/nsz 你是否在为Nintendo Switch游戏文件占用大量存储…

2026/8/7 0:00:19 阅读更多 →

周新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流:一个核心问题的诞生想象一下,你是一个城市供水系统的总工程师。你的城市有多个水源(水库),需要通过一个复杂的地下管道网络,将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/6 22:02:27 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/6 22:02:27 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/6 22:02:27 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/7 17:02:37 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/6 22:02:28 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/7 17:02:36 阅读更多 →