当前位置:首页 » 编程语言 » c语言字符串最后一个字符串

c语言字符串最后一个字符串

发布时间: 2025-07-17 15:09:23

c语言怎么去掉字符串最后一个字符

char *p = a;
while(*p++) ;
p--;//指针后退一个位置,这时指向了字符串的最后一个非空字符。
if(*p == '\\') *p = 0;
//顺便说一下,字符串中字符 \ 要用转义字符来表示,即 \\

⑵ C语言的字符串为什么以0作为它的结尾

在C语言中没有专门的字符串变量,通常用一个字符数组来存放一个字符串。字符串总是以''作为串的结束符。

因此当把一个字符串存入一个数组时,也把结束符 ''存入数组,并以此作为该字符串是否结束的标志。有了''标志后,就不必再用字符数组的长度来判断字符串的长度了。

(2)c语言字符串最后一个字符串扩展阅读:

说明:

把一个字符串赋值给数组:u8 str1[]={"cxjr.21ic.org"};

实际上数组str1在内存中的实际存放情况为: c x j r . 2 1 i c . o r g ''

这后面的''是由C编译系统自动加上的。所以在用字符串赋初值时一般无须指定数组的长度, 而由系统自行处理。 把字符数组str1中的字符串拷贝到字符数组str2中。串结束标志''也一同拷贝。

个案

1. 当数组长度不够。假设我们指定了数组长度,如:u8 str1[13]={"cxjr.21ic.org"};
由于字符组str1的长度为13,所以后面的信息会丢失,即''丢失。

2. 如果在给数组赋值时,把每个字符单独用引号括起来。也会丢失''。如:

u8 str1[]={'c','x','j','r','.','2','1','i','c','.','o','r','g'};

如果希望数组以''结束,则可以写成以下三者之一:

(1)u8 str1[]={"cxjr.21ic.org"}; //字符串赋值

(2)u8 str1[]={'c','x','j','r','.','2','1','i','c','.','o','r','g',''}; //人工添加

(3)u8 str1[14]={'c','x','j','r','.','2','1','i','c','.','o','r','g'}; //故意给数组预留一个空位

热点内容
能扫ip的服务器 发布:2025-07-17 22:37:12 浏览:798
php获取文字 发布:2025-07-17 22:36:13 浏览:296
编译原理消除空产生是怎么写 发布:2025-07-17 22:30:48 浏览:978
诉状上传 发布:2025-07-17 22:07:28 浏览:336
ccs80中编译器如何 发布:2025-07-17 21:54:58 浏览:402
未转变者怎么匹配服务器 发布:2025-07-17 21:35:16 浏览:389
联想服务器型号怎么看 发布:2025-07-17 21:35:14 浏览:238
优化大师登录密码是多少 发布:2025-07-17 21:34:39 浏览:409
荣威和别克哪个配置好 发布:2025-07-17 20:56:03 浏览:702
数据库的基本概念 发布:2025-07-17 20:42:02 浏览:769