- 博客(23)
- 收藏
- 关注
原创 C.字符串处理
C语言中对字符和字符串的处理很是频繁,但是C语言本身是没有字符串类型的,字符串通常放在常量字符串 中或者 字符数组 中。 字符串常量 适用于那些对它不做修改的字符串函数。strlen();strcpy();strncpy();strcmp();strncmp();strchr();strstr();atoi();atol();atof();strtok();strerror();toupper();tolower();
2024-04-06 00:35:38 783
原创 C.strstr()函数
strstr();函数描述:查找子字符串返回指向str1中str2第一次出现的指针,如果str2不是str1的一部分,则返回空指针。匹配过程不包括结束的空字符,但它到此为止。函数参数:str1:要扫描的C字符串。str2:包含要匹配的字符序列的C字符串。函数返回:指向str2中指定的整个字符序列在str1中第一次出现的指针,如果该序列不存在于str1中,则为空指针。
2024-04-06 00:26:47 449
原创 C.strchr()函数
strchr();函数描述:定位字符串中出现的第一个字符返回指向C字符串str中第一次出现的字符的指针。结束的空字符被认为是C字符串的一部分。因此,也可以定位它,以便检索指向字符串末尾的指针。函数参数:str:C字符串character:要定位的字符。它作为其int提升传递,但为了进行比较,它在内部被转换回char。函数返回:指向str中第一次出现的字符的指针。如果没有找到该字符,则该函数返回空指针。
2024-04-06 00:22:07 508
原创 C.strcmp()函数
函数描述:比较两个字符串。比较C字符串str1和C字符串str2。这个函数开始比较每个字符串的第一个字符。如果它们彼此相等,则继续执行以下对,直到字符不同或达到终止空字符为止。这个函数执行字符的二进制比较。有关考虑特定于语言环境规则的函数,请参见strcoll - C++ Reference (cplusplus.com)。函数参数:str1:要比较的C字符串。str2:要比较的C字符串。函数返回:返回一个整数值,指示字符串之间的关系:
2024-04-01 23:42:54 469
原创 C.strcat()函数
函数描述:追加连接字符串。将源字符串的副本追加到目标字符串。destination中的结束null字符被source的第一个字符覆盖,并且在destination中由两者串联形成的新字符串的末尾包含一个空字符。目的地和源头不得重叠。函数参数:destination:指向目标数组的指针,该数组应包含一个C字符串,并且足够大以包含连接的结果字符串。source:要追加的C字符串。这应该不重叠的目的地。函数返回:返回destination起始指针。
2024-04-01 15:48:49 385
原创 C.自定义类型
我们已经掌握了结构体的基本使用了:现在我们深入讨论一个问题:计算结构体的大小。这也是一个特别热门的考点: 结构体内存对齐。首先得掌握结构体的对齐规则:第一个成员在与结构体变量偏移量为0的地址处。其他成员变量要对齐到某个数字(对齐数)的整数倍的地址处,对齐数 = 编译器默认的一个对齐数 与 该成员大小的较小值。结构体总大小为最大对齐数(每个成员变量都有一个对齐数)的整数倍。如果嵌套了结构体的情况,嵌套的结构体对齐到自己的最大对齐数的整数倍处,结构体的整体大小就是所有最大对齐数(含嵌套结
2024-04-01 15:07:29 827
原创 C.strcpy()函数
char * strcpy ( char * destination, const char * source );函数描述:拷贝字符串。将source指向的C字符串复制到destination指向的数组中,包括结束的null字符(并在该点停止)。为了避免溢出,destination指向的数组的大小应该足够长,以包含与source相同的C字符串(包括结束的null字符),并且不应该在内存中与source重叠。函数描述:destination:指向要在其中复制内容的目标数组的指针。sour
2024-03-27 13:25:29 481
原创 C.strlen()函数
size_t strlen ( const char * str );函数描述:获取字符串长度。返回C字符串str的长度。C字符串的长度由结束的空字符决定: C字符串的长度等于字符串开头和结束的空字符之间的字符数(不包括结束的空字符本身)。不应将此与保存字符串的数组的大小混淆。例如: charmystr[100]="test string";定义了一个长度为100个字符的字符数组,但是mystr初始化的C字符串的长度只有11个字符。因此,sizeof(mystr)的结果是100,而str
2024-03-27 12:39:29 390
原创 C#.面向对象
C#是面向对象的语言,使用类来进行抽象。在 C# 中,类是引用类型的。类是对象在面向对象编程语言中的反映。类从客观事务中抽象和总结出来的“蓝图”。 类描述了一系列在概念上有相同含义的对象,并为这些对对象统一定义了各种成员。 类是一种数据结构,可以包含数据成员(常量和域)、函数成员(方法、属性、事件、索引器、构造函数和析构函数)和嵌套类型等。我们可以创建类的实例(instance),这个实例也被称为对象(object),我们可以通过类和对象来编程。
2024-03-21 13:08:49 640
原创 Linux.CentOS 7 镜像源配置
CentOS7镜像源配置CentOS默认的yum源有时候不是国内镜像,导致yum在线安装及更新速度不是很理想,这时候需要将yum源设置为国内镜像站点(网易or阿里云等)。更换yum国内源:查看内容(可以查看其内容):
2024-03-21 12:27:06 2818
原创 Codesys.运动控制修改凸轮点
通过改凸轮曲线的主从轴缩放比例或者偏置。新建多个凸轮曲线,对CAM曲线进行切换。程序中动态修改,仅修改中间的关键点(凸轮末点修改or凸轮曲线运行中修改)。程序中动态修改,修改首未关键点及关键点个数,需要重新触发MC_TableSelect。使用程序新建凸轮表代码,实现电子凸轮基本运动。我们讲的凸轮表切换、关键点修改、程序新建电子凸轮,这些方法没有本质区别,总之都是“趁曲线不注意,把凸轮表改了。
2024-03-21 02:04:26 2833 2
原创 Linux.CentOS 7 Yum安装工具
在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装.软件包和软件包管理器, 就好比 "App" 和 "应用商店" 这样的关系.yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器. 主要应用在Fedora, Re
2024-03-21 01:51:54 886
原创 C#.初步认识
Net:是一种用于构建多种应用的免费开源开发平台,可以在其平台上支持各种语言进行开发。.Net是.Net系列开发框架的总称。包含.NET Framework、.Net Core 、Xamarin..Net Framework:是一个由微软设计和开发的软件框架,主要用来开发可以在 Windows 平台上运行的应用程序。提供托管执行环境、简化的开发和部署以及与各种编程语言的集成。.NET Framework 支持 多种编程语言,如C#、VB.NET、C++等等。.Net Core :是适用于 Win
2024-03-21 01:42:34 1282
原创 Linux.用户和权限
Linux下有两种用户:超级用户(root)、普通用户超级用户:可以再linux系统下做任何事情,不受限制。普通用户:在linux下做有限的事情。超级用户的命令提示符是“#”,普通用户的命令提示符是“$” 。目录的特殊权限可执行权限: 如果目录没有可执行权限, 则无法cd到目录中。可读权限: 如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容。可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件。
2024-03-17 23:27:22 2627
原创 C.C语言刨析指针
指针理解的2个要点:指针是内存中一个最小单元的编号,也就是地址。平时口语中说的指针,通常指的是指针变量,是用来存放内存地址的变量。总结:指针就是地址,口语中说的指针通常指的是指针变量。在32位的机器上,地址是32个0或者1组成二进制序列,那地址就得用4个字节的空间来存储,所以 一个指针变量的大小就应该是4个字节。那如果在64位机器上,如果有64个地址线,那一个指针变量的大小是8个字节,才能存放一个地 址。
2024-03-17 03:02:26 544
原创 C.C语言剖析数据类型
C语言数据类型,为什么会有大小端模式之分呢?这是因为在计算机系统中,我们是以字节为单位的,每个地址单元都对应着一个字节,一个字节为8 bit。但是在C语言中除了8 bit的char之外,还有16 bit的short型,32 bit的long型(要看具体的编译器),另外,对于位数大于8位的处理器,例如16位或者32位的处理器,由于寄存器宽度大于一个字节,那么必然存在着一个如何将多个字节安排的问题。因此就导致了大端存储模式和小端存储模式。
2024-03-17 02:36:53 609
原创 C.C语言数组
数组是一组相同类型元素的集合,数组的创建方式://代码1int arr1[10];//代码2int count = 10;int arr2[count];//数组时候可以正常创建?//代码3char arr3[10]; float arr4[1]; double arr5[20];
2024-03-10 01:44:29 727
原创 C.C语言函数
一. 函数是什么数学中我们常见到函数的概念,但是你了解C语言中的函数吗?维基百科中对函数的定义: 子程序在计算机科学中,子程序(英语:Subroutine, procedure, function, routine, method,subprogram, callable unit),是一个大型程序中的某部分代码, 由一个或多个语句块组成。它负责完成某项特定任务,而且相较于其他代 码,具备相对的独立性。 一般会有输入参数并有返回值,提供对过程的封装和细节的隐藏。这些代码通常被集成为软 件库。
2024-03-10 01:10:38 678
原创 Codesys.运动控制电子凸轮
电子凸轮到底是什么?机械图伦的推杆位置跟随凸轮角度的周期性变化而变化,其运动特性与机械凸轮的外形相关,定义凸轮为主轴,推杆为从周,那么凸轮的实质就是从周对应主轴的一种位置函数关系。机械电子化,硬件软件化成为当今工业自动化发展趋势,随着制造装备的技术升级,伺服的应用日渐普及,应用系统要求多轴同步运动控制功能,在包装、印刷、鲤电等行业应用极其广泛,采用多伺服轴代替传统机械凸轮,已成为主流趋势。电子凸轮是利用软件数字方式的“凸轮表”来代替机械凸轮,因此也称电子凸轮控制。
2024-03-10 00:46:05 3522
原创 Linux.配置普通用户的sudo提权
刚学习linux的小伙伴肯定会遇到sudo提权的问题。在Linux系统操作时,通常不会直接采用root用户。但当某些命令需要root权限执行时,往往会通过 sudo命令提升当前用户的执行权限来完成,如果普通用户并未进行配置相应的配置,则在使用sudo命令时会提示“xxx 不在 sudoers 文件中。此事将被报告。“本篇文章就带大家实践一下如何对普通用户配置sudo命令执行的权限。
2024-03-10 00:23:55 663
原创 Codesys.运动控制电子齿轮
运动控制电子齿轮能够将2轴或多轴联系起来,实现精确的同步运动,从而替代传统的机械齿轮连接。我们把被跟 …传动比:主轴速度与从轴速度的比例。电子齿轮模式能够灵活的设置传动比,节省机械系统的安装时间。当主轴速度变化时,从轴会根据设定好的传动比自动改变速度。电子齿轮模式也能够在运动过程中修改传动比。
2024-03-09 03:40:11 2735 1
原创 C.C语言分支和循环语句
C语句可分为以下五类:表达式语句、函数调用语句、控制语句、复合语句、空语句。控制语句用于控制程序的执行流程,以实现程序的各种结构方式,它们由特定的语句定义符组成,C语 言有九种控制语句。可分成以下三类:条件判断语句也叫分支语句:if语句、switch语句。循环执行语句:do while语句、while语句、for语句。转向语句:break语句、goto语句、continue语句、return语句。
2024-03-09 03:04:30 773
原创 C.C语言初步认识
什么是C语言C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为
2024-03-09 02:29:25 752
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人