c语言字符串

阿里云大模型 ACP 认证教材内容突变?这些改动藏着通关密码,不看亏大! 【摘要】核心章节大换血,安全合规融入实战场景,大模型微调用数学深度解析,部署章节带来阿里云产品对比实战攻略,甚至整章内容被替换成藏满学习彩蛋的行业趋势指南。这些改动不仅重塑考试重点,更暗藏官方命题风向——安全合规考场景方案,微调原理考几何解析,部署设计考分析框架。无论你是数学小白还是部署新手,这篇攻略都将带你吃透变动逻辑,附赠急救包和考点清单,帮你抓住这些“隐形加分项”,速来解锁通关秘籍! 阅读详情
//
//  main.c
//  c字符串处理
//
//  Created by stevenchang on 9/3/15.
//  Copyright (c) 2015 cz. All rights reserved.
//

#include <stdio.h>
#include <string.h>

void forString(char str[]);   //声明一个函数用于遍历字符串中的元素
int contains_char(char str[], char value);   //判断字符串中是否包含某个字符,0:否;1:是

int main(int argc, const char * argv[]) {
    // insert code here...
//    printf("Hello, World!\n");
    
    /**
     1.字符串的定义:
     2.字符串的初始化;
     3.字符串的使用注意;
     4.字符串的循环;
     5.字符串数组;
     */
    
    //1.字符串的定义:c语言中是没有string类型来表示字符串的
    //使用的是char []数组来表示一个字符串。
    
    //2.字符串的初始化
    char str1[] = "stevenchang";   //初始化一个字符串,实际的长度为12(stevenchang+1个\0)
    unsigned long length1 = strlen(str1);     //字符串的长度
    int byteNum1 = sizeof(str1);     //字符串的长度,这里的长度指得是字节数,并不是实际个数
    printf("%s长度为%ld,字节数为%d\n",str1, length1, byteNum1);
    forString(str1);
    
    printf("===================\n");
    char str2[] = {'2','3','4',0};   //字符串末尾会默认以'\0‘(0和'\0'的意思是一样的)结尾
    unsigned long length2 = strlen(str2);     //字符串的长度
    int byteNum2 = sizeof(str2);    //字符串的字节数
    printf("%s长度为%ld,字节数为%d\n", str2, length2, byteNum2);
    forString(str2);
    
    printf("=========================\n");
    char str3[] = {'1','3','r','6','\0'};
    unsigned long length3 = strlen(str3);     //字符串的长度
    int byteNum3 = sizeof(str3);      //字符串的字节数
    printf("%s长度为%ld,字节数为%d\n", str3, length3, byteNum3);
    forString(str3);
    int result = contains_char(str3, '1');
    printf("是否包含字符:%d\n",result);
    
//    printf("=======================\n");
//    char str4[] = {'1','2','3'};    //这只是一个char[],并不是字符串
//    unsigned long length4 = strlen(str4);     //字符串的长度
//    int byteNum4 = sizeof(str4);    //字符串的字节数
//    printf("%s长度为%ld,字节数为%d", str4, length4, byteNum4);
    
    /**
     3.字符串使用注意:
        字符串都是以'\0'结尾的;
        strlen() 统计的是除‘\0’之外的个数
        sizeof() 统计的所有字符
        输出字符串使用的是%s
     */
    
    printf("=========二维字符串数组================\n");
    char str5[][6] = {{'1','3','4','\0'}, {'2','5','\0'}};  //二维字符串数组
    char str6[][5] = {"134141",'\0',"1341341"};
    printf("%s\n",str5[0]);   //默认打出的是第一个字符串
    printf("%s\n",str5[1]);    //打印出来得时第二个字符串
    printf("%s\n",str6[0]);  //打印的字符串是以'\0'结尾的
    return 0;
}

/**
 此函数用于遍历字符串
 */
void forString(char str[]) {
    for (int i = 0; i < strlen(str); i++) {
        printf("%c\t",str[i]);
        if (i == strlen(str) - 1) {
            printf("\n");
        }
    }
}

/**
 判断字符串中是否包含某个字符
 */
int contains_char(char str[], char value) {
    int i = -1;
    
    while (str[++i]!=value && str[i]) ;
    
    return str[i]?1:0;
}

注释:

列出了字符串的定义,初始化,遍历,求字节书,字符串长度以及二维数组的定义,初始化。

这里只使用了strlen这一个字符串的方法,如果想学习其他的方法,可以自己进行自学。

2026华为OD机试(C语言)真题【E卷+A卷+B卷+C卷+D卷】目录+在线OJ 华为OD机试真题题库【E卷+A卷+B卷+C卷+D卷】目录,C语言实现。 阅读详情

相关推荐

主成分分析(PCA)和局部线性嵌入(LEE)原理详解

从KNN谈“维度灾难”,介绍线性降维PCA和局部线性嵌入LLE 这两种降维方法的原理

superzzx0920的博客 5616

C语言字符串赋值的方法

首先,C语言没有向C++,Java,python等面向对象的语言中string这样的字符串类型,C语言中的字符串是存放在字符型数组中的 C语言中,常见的3种字符串赋值有如下: 1、通过字符数组直接初始化 int main() { char str[10] = "China";//还可以写成char str[10] ;str[10] = "China"; printf("str = %s", &str); return 0; } 但是,直接把数组元素赋值给数组名(也就是数组首元素的地址),是不

shanglala的博客 13万+

台达PLC使用RS485Modbus指令通信

台达PLC,RS485,Modbus RTU,从站梯形图,0X01,0X02,0X05,CRC校验

lilililimu的博客 1万+

c语言中字符串详解

仔细讲讲c语言字符串的事

qq1696942593的博客 5万+

Mac安装Weblogic教程

1.Weblogic的下载 这次安装的是最新版本12 官网下载地址: http://www.oracle.com/technetwork/middleware/weblogic/downloads/index.html 下载需要登录账号,如没有账号要注册一个 下载后的文件如下图,其中fmw_12.2.1.3.0_wls_quick.jar文件就是安装包了,注意现在不要对它进行解压 2.安装前的确...

weixin_40102675的博客 5063

2025年ZBrush雕刻实战:从基础到高级技巧全解析

本文全面解析2025年ZBrush雕刻实战技巧,从基础界面操作到高级笔刷应用。详细介绍了核心功能区域如工具面板和灯箱,以及推荐材质选择。重点讲解6个实用笔刷技巧,包括Standard、Move和ClayBuildup等,帮助用户从入门到精通掌握ZBrush雕刻技术。

weixin_29300241的博客 360

C语言字符串

字符串字面量是const 的数据(常量),由于 *b 指向这个 const 数据,所以实际上b 是const char * b ,但是由于历史的原因,编译器接受不带 const 的写法,这意味这不能用 b 改变它指向的数据,但是仍然可以改变 b 的值,就是让 b 指向别的位置。如果把一个字符串字面量拷贝给一个数组,就可以随意改变数据,除非把数组声明为 const,数组元素是变量,但是数组名不是变量。 ...

qq_43627501的博客 1万+

Protege本体建模实战:从零构建电影知识图谱并导入Neo4j

本体建模是知识图谱构建的基石,通过类、属性、实例和约束系统描述领域知识,为数据提供可复用的语义骨架。OWL作为本体描述语言的标准,配合Protege工具可实现可视化建模,并借助推理机验证逻辑一致性,提升模型可靠性。在工程落地中,本体模型常需导入图数据库如Neo4j,以支持高效的关联查询与业务应用。本文以影视领域为背景,完整演示Protege中定义类层级、创建对象/数据属性、填充实例,以及导出OWL文件并通过Python脚本转换为Neo4j节点与关系的全过程,同时梳理命名空间、匿名节点、编码等易踩坑点,帮助读

weixin_29047545的博客 281

C语言中字符串比较

在单片机串口实现字符串命令解析这篇文章中分析了在串口通信中如何去解析字符串命令,这篇文章就来讨论下字符串比较的方法都有哪些? 说起比较运算,肯定第一时间想到了C语言中关于比较的相关运算符 “>、<、!=、>=、<=、==”,那么要比较两个字符串是否相等是不是直接用“==”比较就行了。下面就来看看这种方法行不行? 先看一个例子 void main( void ) { char s1[] = "abc"; char s2[] ...

HXYDJ的博客 2万+

scratch绘制旋转彩球 2023年9月电子学会图形化编程scratch编程等级考试四级真题和答案解析

​ scratch绘制旋转彩球 2023年9月电子学会图形化编程Scratch等级考试四级真题 一、题目要求 1、准备工作 (1)删除小猫角色,从角色库选择Ball角色; (2)默认空白背景。 ​

青少年编程学习指导 1368

YOLOv11改进策略【Head】| AFPN渐进式自适应特征金字塔,增加针对小目标的检测头(附模块详解和完整配置步骤)

一、本文介绍 本文利用AFPN对YOLOv11的网络模型进行优化提升。AFPN采用渐近式融合及自适应空间融合操作。通过渐近式架构,逐步整合不同层级特征,有效避免非相邻层级间因语义差距过大导致的信息丢失或降级问题,确保在多尺度特征融合过程中既能保留高层语义信息,又能融入低层细节特征。本文将AFPN应用于YOLOv11中,并配置了针对小目标的检测头,能显著增强模型对不同尺度目标的检测能力,使其在复杂场景下更聚焦于目标物体特征,减少背景等无关信息的影响。 专栏目录:YOLOv11改进目录一览 | 涉及卷积层、

Limiiiing的博客 2718

C语言字符串详解

字符串是一种非常重要的数据类型,但是C语言不存在显式的字符串类型,C语言中的字符串都以字符串常量的形式出现或存储在字符数组中。同时,C 语言提供了一系列库函数来对操作字符串,这些库函数都包含在头文件 string.h 中。 一、字符串常量和字符数组 1、什么是字符串常量 C 语言虽然没有字符串类型,但是 C语言提是存在字符串这个概念的,也就是字符串常量:以 NUL 字节结尾的 0 个或多个字符组成的序列。字符串常量是不可被修改的,一般用一对双引号(" ")括起的一串字符来表示字符串常量,如:   "

weixin_55305220的博客 6954

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

C语言之字符串

这是一个字符数组的声明。它分配了10个连续的char类型的存储空间。你可以使用这个数组来存储最多9个字符的字符串(第10个字符用来存储字符串结束符’\0’),或者任何其他的字符数据。它可以执行的操作有:利用索引运算符取、改元素。当此字符表示存储字符串时,可以直接作为参数传递给字符串处理函数。

weixin_49863600的博客 2024

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

c语言中字符串中输入空格,C语言输入带空格的字符串

因为:scanf("%s",str); 遇到空格就停止接收后面的字符。scanf("%s",str,10);不能接收带空格的字符串输入,虽然它的指定长度是10, 但是遇到空格时即使没有满10个字符它也自动结束输入了。所以:1.用 gets() 可以读取空格, 直到回车才会结束输入char str[80];gets(str); //可以读取空格, 回车才会结束输入2.使用"%[^\n]"可...

weixin_36329939的博客 2万+

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

C语言中字符串详解

C语言中字符串详解 字符串时是C语言中非常重要的部分,我们从字符串的性质和字符串的创建、程序中字符串的输入输出和字符串的操作来对字符串进行详细的解析。 什么是字符串? C语言本身没有内置的字符串类型,字符串本质上是一种特殊类型的数组,它的组成元素类型为char,除此之外不受制与数组长度的限制,以'\0'作为结束标志,作为字符串结束的标志。(\0作为一个特殊字符,它的ASCII值为0,但是它不是'0'字符,'0'字符的ASCII值为48。) 定义字符串 1. 字符串字面量(字符串常量) 字符串字面量

weixin_46093842的博客 4941

C语言 字符串

C 语言中,字符串实际上是一维字符数组,以空字符 ‘\0’ 结尾。空字符是 ASCII 码值为 0 的控制字符,用于标记字符串的结束。从菜鸟教程的解释来看,‘\0’ 是转义字符,不是字符 ‘0’,其作用是告诉编译器字符串的结束位置。例如,字符串 “hello” 在内存中存储为 {‘h’, ‘e’, ‘l’, ‘l’, ‘o’, ‘\0’}。C语言中文网进一步指出,C 语言没有显式的字符串类型,字符串的概念是通过字符数组实现的,这与现代语言(如 Java 或 Python)的字符串对象有显著区别。

likuoelie的博客 1167

C语言——字符串

在C语言中,字符串是由字符数组表示的,通常以空字符\0结尾。

weixin_61226442的博客 4323

c语言定于字符串string,c语言字符串string

c语言中,怎么样定义一个字符串变量C语言没有字符串类型,所以没办法进行定义字符串变量。 但是可以用字符数组来处理字符串。(这定义了一个字符数组,名为a) 例:char a[] = "hello"; 也可以用来定义一个指针变量(定义了一个指针变量,名为p)。 例:char *p = "hello"; 接触C语言C语言中有string吗?C语言中没有string类型。 string类型是 C++、ja...

weixin_42394573的博客 3754

【C语言】字符串的连接

本题要求实现一个函数,将两个字符串连接起来。 函数接口定义: char *str_cat( char *s, char *t ); 函数str_cat应将字符串t复制到字符串s的末端,并且返回字符串s的首地址。 裁判测试程序样例: #include <stdio.h> #include <string.h> #define MAXS 10 char *str_cat( char *s, char *t ); int main() { char *p; char

tianty1121的博客 7257

C语言中实现字符串的拼接

文章目录前言一、strcat函数总结 前言 我们在利用C语言进行程序的时候,有时候需要实现字符串的拼接需要,自己写就大可不必了,毕竟我们可是CV工程师啊。 一、strcat函数 strcat(str1,str2)函数是C语言中自带的库函数,用来实现两个字符串的拼接,有两个参数, 其作用是将第二个字符串拼到第一个字符串的后面。代码如下: 我这个是STM32的代码,不过都是一样的,都是C语言。 #include "stdio.h" #include "string.h" int main(void) {

qq_45138815的博客 3万+

C语言字符串常量

C语言字符串常量 一.字符串常量的声明 char *p = "hello";//指针直接往上戳 一个字符串常量为什么会给一个指针赋值?字符串常量的值是该字符串第一个字母的首地址敲一段代码验证一下 结论:字符串本身是有值的,就是第一个字符的地址。 因为它的值是地址,所以可以这样用 还有一条:同一个字符串常量,它们的值(地址)相同 二.注意事项 1.字符串常量和字符数组不同...

qq2071114140的博客 1万+

C 语言字符串

C 语言没有单独的字符串类型,字符串被当作字符数组,即char类型的数组。比如,字符串“Hello”是当作数组处理的。编译器会给数组分配一段连续内存,所有字符储存在相邻的内存单元之中。在字符串结尾,C 语言会自动添加一个全是二进制0的字节,写作\0字符,表示字符串结束。字符\0不同于字符0,前者的 ASCII 码是0(二进制形式00000000),后者的 ASCII 码是48(二进制形式00110000所以,字符串“Hello”实际储存的数组是。所有字符串的最后一个字符,都是\0。

分享编程知识与技巧 致力于技术交流与学习 找我合作私聊 有偿解决计算机问题 1038
上一篇: 正则表达式集合
下一篇: c语言指针基本使用
StevenLoveMaggie
博客等级 码龄16年 10粉丝 41原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值