2022/11/18拓展班上机课

news2024/9/20 16:40:35

Vs的使用

  • 新建项目

  • 新建源文件

  • 关闭scanf_sprintf_s检查:project -> 属性 -> C/C++ -> 常规 ->SDL:否
    在这里插入图片描述
    在这里插入图片描述

  • char* str="..."出现”"const char *" 类型的值不能用于初始化 "char *" 类型的实体“错误:project -> 属性 -> C/C++ -> 语言 -> 符合模式:否
    在这里插入图片描述
    在这里插入图片描述

  • 调试

用指针表示字符串

关于指针

这是一个链接~ 什么是指针?

  • 两种指针运算符,一种是取地址运算符 &,一种是间接寻址运算符 *。
    • & 是一元运算符,返回操作数的内存地址。
    • * 是一元运算符,返回操作数所指定地址的变量的值。

指针的移动

#include<stdio.h>
#include<string.h>
int main() {
	char* str = "hello world";
	char* point = str;
	
	for (int i = 0; i < strlen(str); i++) {
		printf("%p:%c", point, *point);
		point++;
	}

	return 0;
}

字符串

  • 字符串的输入输出用到%s
    #include<stdio.h>
    #include<string.h>
    #include <stdlib.h>
    int main() {
    	//char* str;//直接这样不行
    	char* str = (char*)malloc(sizeof(char)*30);
    	scanf("%s", str);//不用取地址符了,str指向的就是一片地址空间
    	printf("%s\n", str);
    
    	char str1[30];
    	printf("%d %d", sizeof(str1),sizeof(str));//30 8
    	return 0;
    }
    
#include<stdio.h>
#include<string.h>
int main() {
	char *str = "hello world!";
	printf("str:%s,strlen:%d,sizeof:%d\n", str,strlen(str),sizeof(str));
	//str:hello world!,strlen:12,sizeof:8

	printf("%p\n", str);//00007FF72DB59C28
	printf("%c\n", *str);//h
	printf("%p\n", str+1);//00007FF72DB59C29
	printf("%c\n", *(str+1));//e

	return 0;
}

数组表示字符串(和上面比较一下)

  • 在C语言中,使用string.h头文件中的 strlen() 函数来求字符串的长度。

  • 在C语言中,字符串总是以’\0’作为结尾,所以’\0’也被称为字符串结束标志,或者字符串结束符。由" "包围的字符串会自动在末尾添加’\0’。

    #include<stdio.h>
    #include<string.h>
    int main() {
    	char str1[30] = { 'h','e','l','l','o' };
    	printf("%s", str1);//hello
    
    	char str2[30];
    	str2[0] = 'h';
    	str2[1] = 'e';
    	str2[2] = 'l';
    	str2[3] = 'l';
    	str2[4] = 'o';
    	printf("%s", str2);//hello烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫虜悿f?
    	return 0;
    }
    
  • 注意!字符数组只有在定义时才能将整个字符串一次性地赋值给它,一旦定义完了,就只能一个字符一个字符地赋值了。

    • char str1[] = "hello world"
    • char str1[] = {"hello world"}
    • char str2[30] = "hello world"
    • char str2[30] = {"hello world"}
    char str1[] = "hello world";
    //char str1[] = {"hello world"};
    printf("str:%s, strlen:%d, sizeof:%d\n",str1,strlen(str1),sizeof(str1));
    //str:hello world, strlen:11, sizeof:12
    
    char str2[30] = "hello world";
    //char str2[30] = {"hello world"};
    printf("str:%s, strlen:%d, sizeof:%d\n",str2,strlen(str2),sizeof(str2));
    //str:hello world, strlen:11, sizeof:30
    
    // char str[30];
    // str = "hello world";
    // 哒咩
    

数组和指针表示字符串是可以互换的

#include<stdio.h>
#include<string.h>
int main() {
	char str[] = "hello";
	char* point = str;

	for (int i = 0; i < strlen(str); i++)
		printf("%c %c %d\n", str[i], *(point + i), str[i] == *(point + i));
	/*
	h h 1
	e e 1
	l l 1
	l l 1
	o o 1
	*/
	return 0;
}

题目

在这里插入图片描述
在这里插入图片描述

char *match( char *s, char ch1, char ch2 ){
    int sign = 0;
    char* c = s;
    s = "";
    while(*c != '\0'){
        if(!sign&&*c == ch1) {
            sign = 1;
            s = c;
        }
        if(sign) printf("%c",*c);
        if(*c == ch2) break;
        
        c++;
    }
    printf("\n");
    return s;
}

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

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

相关文章

2022.11.17补题祭

前言&#xff1a; 考完期中考试了&#xff01;&#xff01;生物逆袭了&#xff01;&#xff01;全年级前十&#xff08;可能是因为题目太简单我比较细心吧&#xff09;但还是错了一些不该错的题目......&#xff08;生物惨痛87分&#xff09; 感觉这次期中考试情况良好&#…

荧光标记PEG衍生物——Fluorescein-PEG-Azide,FITC-PEG-N3,荧光素peg叠氮

荧光标记PEG衍生物——Fluorescein-PEG-Azide&#xff0c;FITC-PEG-N3&#xff0c;中文名为荧光素-聚乙二醇-叠氮&#xff0c;其所属分类为Azide PEG Fluorescent PEG。 Fluorescein-PEG-Azide的分子量均可定制&#xff1a;荧光素-peg 20000-叠氮/Fluorescein-PEG 5000-Azide、…

47-用户和权限管理

47-用户和权限管理用户的管理和相关管理命令用户的基础概念用户UID区分用户类别创建用户- useradd修改用户- usermod删除用户- userdel修改用户密码- passwd实验&#xff1a;用户的管理文件用户组的基础概念用户组GID用户组分类创建组- groupadd修改组-groupmod删除组- groupde…

qt 样式表 qss

Qt样式表是一个可以自定义部件外观的十分强大的机制﹐除了那些能够通过子类化QStyle更改的外观,其余的都可以使用Qt样式表来美化。 实现办法&#xff1a;调用setStyleSheet 函数&#xff0c;其中styleSheet一般通过读取配置文件.qss实现。 void setStyleSheet(const QString&a…

volatile如何保证可见性

在Java中&#xff0c; volatile关键字可以保证变量的可见性&#xff0c;如果我们将变量声明为 volatile&#xff0c;这就指示 JVM&#xff0c;这个变量是共享且不稳定的&#xff0c;每次使用它都到主存中进行读取。 Java内存模型&#xff1a; 1.Java所有变量都存储在主…

关于java语言当中的this关键字

/*** 关于java语言当中的this关键字&#xff1a;&#xff08;其内存图见下图&#xff09;* 1、this是一个关键字&#xff0c;翻译为&#xff1a;“这个”* 2、this是一个引用&#xff0c;它是一个变量&#xff0c;this变量中保存的内存地址指向了自身&#xff0c;this存…

APISpace接口推荐

APISpace 上面有各种类型的API&#xff0c;短信类、天气环境类、快递物流类、数据智能类等等&#xff0c;并且所有的API都提供的免费的调用次数&#xff0c;这么多的API肯定有你中意的&#xff01;&#xff01;&#xff01;我们超多的热门API推荐给大家&#xff1a; IP归属地A…

CUDA与cuDNN安装教程(超详细)

前言 windows10 和win11安装 CUDA &#xff0c;首先需要下载两个安装包 CUDA toolkit&#xff08;toolkit就是指工具包&#xff09; cuDNN 用于配置深度学习使用 官方教程 CUDA&#xff1a;Installation Guide Windows :: CUDA Toolkit Documentation (nvidia.com) cuDNN&…

ADMIN云计算系统管理

云计算系统管理一、inux简介Unix/Linux发展史操作系统 —— UNICS&#xff0c;后改为UNIXLinux版本及应用Red Hat系列版本二、Linux系统的安装三、Linux预备知识Linux目录结构四、Linux基本操作获取命令行右键“打开终端”命令行提示符pwd — Print Working Directorycd — Cha…

01-微服务探讨(摘)

1. 前言 1.1 微服务目的 有效地拆分应用&#xff0c;实现敏捷开发和部署&#xff0c;最终的目标是实现敏捷开发和部署&#xff0c;实现的方式是围绕业务能力*有效地拆分应用*。 微服务就是从各种角度&#xff0c;包括组织的、技术的等来阐释怎样有效地拆分应用&#xff0c;相对…

SSM-Spring

Spring Framwork 1. 核心概念 1.1 IoC控制反转 inversion of control控制反转 使用对象是主动由外部提供对象&#xff0c;此过程对象创建控制权由程序转移到外部。 Spring 提供IoC容器&#xff0c;用来充当IoC思想中的外部。负责创建和初始化等工作&#xff0c;被创建的对象再…

04-HTTPS证书格式及转换

PEM格式的证书文件&#xff08;*.pem&#xff09;由Base64编码的二进制内容和开头行&#xff08;-----BEGIN CERTIFICATE-----&#xff09;、结束行&#xff08;-----END CERTIFICATE-----&#xff09;组成&#xff0c;支持使用EditPlus等文本编辑器打开。本文介绍了将不同格式…

[附源码]java毕业设计教室用电控制系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

数据库的备份和还原(slqserver)

数据库的备份 1.语法&#xff1a; BACKUP DATABASE { database_name | database_name_var } TO <backup_device> [,...n] [ WITH{COPY_ONLY| NAME {backup_set_name | backup_set_name_var }| { NOINIT | INIT }| DESCRIPTION { test | text_variable }| PASSWORD { …

双端队列(双端bfs)解决边权只包含0和1的最短路问题

电路维修 达达是来自异世界的魔女&#xff0c;她在漫无目的地四处漂流的时候&#xff0c;遇到了善良的少女翰翰&#xff0c;从而被收留在地球上。 翰翰的家里有一辆飞行车。有一天飞行车的电路板突然出现了故障&#xff0c;导致无法启动。电路板的整体结构是一个 R行 C 列的网…

关于 re.sub 部分替换的解决办法

关于 re.sub 部分替换的解决办法写作背景问题重现解决办法代码详解结尾写作背景 最近本菜鸡遇到一个问题&#xff0c;我想将字符串中某一部分替换成指定内容&#xff0c;而且为了定位到要替换的内容&#xff0c;所以使用正则的时候还需要前后一些字符作为锚点&#xff0c;这可…

linux下基本命令

linux下基本命令一、linux相关快捷键二、linux下内部命令和外部命令2.1 内建命令2.2 外部命令2.3 内建命令和外部命令对比2.4 命令类型查看方法2.4 内建命令和外部命令帮助三、man手册四、相对路径和绝对路径五、pwd和cd命令六、mkdir创建目录七、rmdir删除目录八、linux文件类…

JMeter如何自定义HTTP组件

JMeter是一个优秀的开源项目&#xff0c;我们可以在jmeter的官网了解到如何使用和如何二次开发&#xff1a;Apache JMeter - Apache JMeter™ 因工作需要&#xff0c;最近做了一个JMeter自定义的http组件&#xff08;其实就是在http的基础上加了点东西而已&#xff09;。现就该…

TCO-PEG5-amine,NH2-PEG5-TCO,反式环辛烯-五聚乙二醇-氨基广泛应用于生物学研究

TCO-PEG5-NH2中英文名&#xff1a; CAS号&#xff1a;N/A | 英文名&#xff1a;TCO-PEG5-amine&#xff0c;TCO-PEG5-NH2 |中文名&#xff1a;反式环辛烯-五聚乙二醇-氨基TCO-PEG5-NH2物理参数&#xff1a; CASNumber&#xff1a;N/A Molecular formula&#xff1a;C21H40N2O7…

没有实施APS软件的工厂,常常面临的问题

对于制造工厂车间的运行而言&#xff0c;计划是核心的业务。制造工厂面对这么多订单并行生产执行、受制于有限的制造资源&#xff0c;如何安排次序、如何权衡轻重缓解&#xff0c;其实都是计划的范畴&#xff0c;计划执行过程总是受到各种形式的干扰或冲击&#xff0c;如何综合…