首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏C++

    C语言(字符字符串函数)2

    = NULL); assert(str2 ! ,方便后面返回; (2)当两个字符串的字符两两比较一直到目标字符串访问到 ‘\0’ 时说明找到了,返回之前记住的地址; (3)当被查找的字符串访问到 ‘\0’ 时说明被查找的字符串不存在 if (*str2 == '0')//当目标字符串是空字符串时 { return cur; } while (*cur ! = '\0') { s1 = cur; s2 = str2; while (*s1 && *s2 && *s1 == *s2) { s1++; s2++; } if (*s2 == '\0')//找到了目标字符串 { return cur; } cur++; } return NULL;//没找到 } int main() { char

    52010编辑于 2024-10-16
  • 来自专栏悟空被FFmpeg玩

    驱动基础——字符设备2

    使用字符设备里的write 驱动代码 #include <linux/module.h> #include <linux/slab.h> #include <linux/kernel.h> #              res=cdev_add(&flash_cdev,dev,MAX_FLASH_ENV_MINORS);     if(res)         printk("<1> fuck2

    1.2K30发布于 2019-03-05
  • 来自专栏python3

    字符串变形(2

    center(width,'*') 将变量字符串在宽度20个字符居中 后面的是可填写的标识 一个字符 中文 符号 数字都可以 示例 a = 'fUcK' b = a.center(20,'1') print (b) ********fUcK******** print结果 count(sun,start=none,end=none) 计算a中字符串 c这个字符出现多少次 5标识从第5个字符开始,9标识到第 9个字符结束 a = 'fUcKfUcKfUcK' b = a.count('c',5,9) sdsdsdsdsd dsdas Process finished with exit code 0 print (b) print结果 1 len()计算字符串有多少位 包含其中的空格位 a = 'The China is very stronger' b = len(a) print(b) 结果 26

    50020发布于 2020-01-19
  • 来自专栏C/C++/数据结构/算法

    【C语言】字符字符串函数(2)

    ⽬标空间 如果源字符串的⻓度⼩于num,则拷⻉完源字符串之后,在⽬标的后边追加\0,直到num个    接下来我们来使用一下它,使拷贝时只拷贝arr2数组中的前3个字符,如下: #include <stdio.h arr1, arr2, 3); printf("%s\n", arr1); return 0; } 运行结果:    可以看到只拷贝了arr2中的前三个字符进arr1,并且覆盖了arr1的前三个字符 有两种情况,如果在字符串str1中找到了字符串str2,那么就返回str1中找到str2的起始位置,如果没有在字符串str1中找到字符串str2,那么就返回一个空指针    所以在使用的时候,我们就可以通过它的返回值来确认是否找到对应的字符串 ; 函数实现: (1)第一步还是老样子,对传过来的str1和str2进行断言,确保它们不是空指针 (2)然后我们来分析这个函数可能出现的情况,按照我们正常去想,就会想到首先就去看str1和str2指向的字符相不相等 * s1 = str1;//代替str1用来往后匹配字符 const char* s2 = str2;//代替str2用来往后匹配字符 const char* cur = str1;//记录开始匹配字符的位置

    37010编辑于 2024-10-15
  • 来自专栏全栈程序员必看

    AbstractInterceptor 字符拦截 struts2

    在输入框做了个字符拦截 ActionContext context = actionInvocation.getInvocationContext(); // get input parameters

    18610编辑于 2022-08-27
  • 来自专栏Kevinello的技术小站

    Golang-optimization「2」: 字符

    字符串在 Go 语言中是不可变类型,占用内存大小是固定的,当使用 + 拼接 2字符串时,生成一个新的字符串,那么就需要开辟一段新的空间,新空间的大小是原来两个字符串的大小之和。 假设一个字符串大小为 10 byte,拼接 1w 次,需要申请的内存大小为:10 + 2 * 10 + 3 * 10 + ... + 10000 * 10 byte = 500 MB 而 strings.Builder 例如,初始大小为 0,当第一次写入大小为 10 byte 的字符串时,则会申请大小为 16 byte 的内存(恰好大于 10 byte 的 2 的指数),第二次写入 10 byte 时,内存不够,则申请 (stringptr(s1) == stringptr(s2)) // true}大多数语言(包括golang)都支持对编译期字符串常量的string interning:s1 := "12"s2 := "1"+"2"fmt.Println(stringptr(s1) == stringptr(s2)) // true但对于运行时的字符串变量并不支持(或者说没有进行string interning):

    59330编辑于 2022-11-17
  • 来自专栏C语言讲解

    字符串和内存函数(2

    memcpy是内存拷贝,它可以拷贝字符串、整型数组、结构体数组等多种类型,所以要用void*的指针来接收。 int arr2[20] = { 0 }; //将arr1中的内容,拷贝到arr2中 memcpy(arr2, arr1, 40); // int* int* int i = 0; printf("%d ", arr1[i]);//1 2 1 2 1 2 1 8 9 10 } return 0; } 因此,memcpy函数是用来处理不重叠的内存拷贝的。 3, 4, 5, 6, 7, 8, 9, 10 }; my_memmove(arr1 + 2, arr1, 20);//1 2 1 2 3 4 5 8 9 10 //my_memmove(arr1 2, 1, 4, 5, 6 }; int arr2[] = { 1, 2, 257 }; //int ret = memcmp(arr1, arr2, 9); //printf("%d\n"

    29310编辑于 2024-01-22
  • 来自专栏C++

    Windows核心编程:第2字符字符串处理

    Github https://github.com/gongluck/Windows-Core-Program.git //第2字符字符串处理.cpp: 定义应用程序的入口点。 // #include "stdafx.h" #include "第2字符字符串处理.h" #include "StrSafe.h" int APIENTRY wWinMain(_In_ HINSTANCE 字符字符串处理"); size_t len = _tcslen(str); TCHAR str2[5] = { 0 }; //errno_t eno = _tcscpy_s (加上字符串结尾,所以>=1) //截断拷贝 HRESULT hres = StringCchCatEx(str2, _countof(str2), str, &pend, &left, /tree/master/TransCode char ansic[] = "第2字符字符串处理"; int ilen = MultiByteToWideChar(CP_ACP,

    64040发布于 2018-06-22
  • 2:Python字符串与数字

    字符串(引号):只有四种情况如下name="我是编程高手"name='我是编程高手'name="""我是编程高手"""name='''我是编程高手'''加法:n1="alex"n2="sb"n3="df"n4 =n1+n2+n3print(n4)="alexsbdf"乘法:n1="alex" n2=n1*10没有减法和除法数字:age=19a1=10a2=20a3=a1+a2a3=a1-a2a3=a1*a2a3 =100/10a3=2**4 2的4次方a3=39%8 #获取39除以8得到的余数739//8 是商=4temp=a%2if temp==0:print("偶数")else:print('奇数')以下两段代码第一段运行报出错 第一个代码片段中的错误在于if语句后的冒号(:)使用了全角字符(:),而不是半角字符(:)。在Python中,必须使用半角字符的冒号来表示语句块的开始。 不过,更关键的是,这个代码片段的print("我是神仙")行中字符串没有闭合,这是导致语法错误的直接原因。

    27300编辑于 2024-08-09
  • 来自专栏c语言,c++

    字符串和内存函数(2

    字符串函数 strtok函数 strtok函数的规则: 1.参数1是指定一个字符串,它包含0个或多个由参数2字符串中一个或多个分隔符分割的标记 2.参数2是个字符字符转换函数 字符转换函数有tolower和toupper。他们的返回值和参数都是int,即字符的ASCII值。如下图,如果参数是小写则转换成大写,如果是大写,则不变。 mencpy的参数1是目标空间,参数2是原始空间,参数3是拷贝的个数,单位是字节,这里指的是把arr2的前5个元素拷贝到arr1中(因为一个整形是4个字节,5个就是20个字节)。 如上图,如果我们想把前五个数(1,2,3,4,5),从第3个数开始的5个数(3,4,5,6,7)拷贝过去,我们希望得到的结果是{1,2,1,2,3,4,5,8,9,10}。可是最后的结果却不是。 如上图,参数1是起始地址,参数2是要设置的内容,参数3是设置的字节个数。

    27510编辑于 2024-01-19
  • 来自专栏∑小熊猫的博客

    Redis 系列(2) —— Redis 的字符

    Redis 字符串相关命令 1. 获取字符串的值 获取字符串的命令格式为 get key 【示例】 # 获取字符串的值 127.0.0.1:6379> get hello "world" 3. 【示例】 # 获取多个值 127.0.0.1:6379> mget hello test1 test2 test3 1) "world" 2) "demo1" 3) "demo2" 4) "demo3" 获取字符串长度 获取字符串长度的命令格式为 strlen key 【示例】 # 获取字符串长度 127.0.0.1:6379> strlen hello (integer) 5 7. ) 8 127.0.0.1:6379> get test2 "demo2asr" 12.

    54730发布于 2021-09-10
  • 来自专栏各类技术文章~

    跟着leedcode刷算法 -- 字符2

    题三: 单词拆分 给你一个字符串 s 和一个字符串列表 wordDict 作为字典,判定 s 是否可以由空格拆分为一个或多个在字典中出现的单词。 说明: 拆分时可以重复使用字典中的单词。 示例 2: 输入: s = "applepenapple", wordDict = ["apple", "pen"] 输出: true 解释: 返回 true 因为 "applepenapple" 可以被拆分成 互不相同 相关标签 字典树 记忆化搜索 哈希表 字符串 动态规划 动态规划思路: 对s进行拆分,s[0..j-1]和s[j:i]两个部分,其中j = 0..i-1 判断以上两个部分是否在wordDict s 和一个包含非空单词列表的字典 wordDict,在字符串中增加空格来构建一个句子,使得句子中所有的单词都在词典中。 catsanddog" wordDict = ["cat", "cats", "and", "sand", "dog"] 输出: [ "cats and dog", "cat sand dog" ] 示例 2

    50800发布于 2021-11-07
  • 来自专栏赤道企鹅的博客

    MnO2 指定字符组合shellcode构造

    /mno2") p = remote('chall.pwnable.tw','10301') elf = ELF(". /mno2") context.log_level = "debug" ''' reg status: EAX 0x324f6e4d ◂— dec eax /* 0x484848; 'HHH 0x324f6e4d ◂— dec eax /* 0x484848; 'HHH' */ ''' ''' target status1: eax = 11 ebx -> '/bin/sh' 0x2f ,0x62,0x69,0x6e,0x2f,0x73,0x68 ecx = 0 edx = 0 int 0x80 b'\xcd\x80' ''' ''' target status2: eax = 3 ebx b"Th1111" #push esp; push 0x33333333; shellcode += b"XeXe" #pop eax;#pop eax; shellcode += b"ThMoO2"

    37610编辑于 2022-08-01
  • 来自专栏技术大杂烩

    【算法题解】 Day2 字符

    每个出现的字符都应当映射到另一个字符,同时不改变字符的顺序。不同字符不能映射到同一个字符上,相同字符只能映射到同一个字符上,字符可以映射到自己本身。 不同字符不能映射到同一个字符上,相同字符只能映射到同一个字符上,字符可以映射到自己本身。 由这个题意可知,我们只要建立好映射关系,并确保它们一一对应即可,因此,需要创建两个哈希表 s2t 和 t2s 来维持一一对应的映射关系,伪代码如下: if (s[i] in s2t and s2t[s[ = t[i]) or (t[i] in t2s and t2s[t[i]] ! = t[i]) or (t[i] in t2s and t2s[t[i]] !

    32420编辑于 2023-08-31
  • 来自专栏Triciaの小世界

    HJ2 计算某字符出现次数

    描述 写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字符,然后输出输入字符串中该字符的出现次数。 (不区分大小写字母) 数据范围: 1 \le n \le 1000 \1≤n≤1000 输入描述: 第一行输入一个由字母和数字以及空格组成的字符串,第二行输入一个字符。 输出描述: 输出输入字符串中含有该字符的个数。 (不区分大小写字母) 示例 输入: ABCabc A 输出: 2 代码 let str = readline() let a = readline() let count = 0 for (item

    77110编辑于 2023-04-12
  • 来自专栏Linux之越战越勇

    C语言进阶(九) - 字符字符串函数 - 2 - strcpy、strcat、strcmp

    ; char str2[20] = { 0 }; puts(strcpy(str2, str1)); return 0; } 运行结果: ---- 2. strcat()函数 2.1 ; char str2[20] = { "Hello"}; puts(strcat(str2, str1)); return 0; } 运行结果: ---- 3. strcmp()函数 { //断言 assert(str1 && str2); //循环判断 while (*str1 == *str2) { if (*str1 == '\0') { return 0; } str1++; str2++; } return *str1 - *str2; } int main() { char str1[] = "abcdef"; char str2 [] = "abcdef"; int ret = my_strcmp1(str1, str2); if(ret > 0) { printf("str1 > str2\n"); } else

    57110编辑于 2023-04-27
  • 来自专栏编程

    Python基础2字符

    例如number=[1,2,3,4,5,6,7,8,9] number[1:3]从索引1,取到索引3(不含3)的中间元素即,[2,3] number[1:]从索引1开始,取到最后一个索引即,[2,3,4,5,6,7,8,9 ] number[:5]从索引0开始,取到索引5(不含5)即,[1,2,3,4,5] number[:]取得全部number,输出整个序列,可以用来复制序列索引可以从左往右也可以从右往左,因此分片也可以 例如:str1=[1,2,3] str2=[4,5] str1+str2结果为[1,2,3,4,5] 乘法:注意只有加法和算术运算类似,其它的都不相同。这里的乘法是指原来的序列被重复N次。 例如:str=[1,2] str*2结果为[1,2,1,2]可以通过这个方法创建占N个空间的空列表,也就是快速初始化。 (分隔符[,分割次数])分隔符默认为空格 strip()方法用于移除字符串头尾指定的字符(默认为空格),返回结果为移除字符串头尾指定的字符所生成的新字符串。

    99390发布于 2018-01-04
  • 来自专栏渔夫

    算法题-1比特与2比特字符

    第一种字符可以用一比特0来表示。第二种字符可以用两比特(10 或 11)来表示。 现给一个由若干比特组成的字符串。问最后一个字符是否必定为一个一比特字符。给定的字符串总是由0结束。 示例 2: 输入: bits = [1, 1, 1, 0] 输出: False 解释: 唯一的编码方式是两比特字符和两比特字符。所以最后一个字符不是一比特字符。 true; } else { boolean temp; int count = 0; int position = bits.length - 2; while (position >= 0)&& bits[position--] == 1) { count++; } if (count % 2 在编码的时候出现了许多次数组越界的警告,其中要点是: 1)对于索引必须>=0的判断一定要有 2)position >= 0)&& bits[position–] == 1与 bits[position

    51720发布于 2019-07-31
  • 来自专栏Michael阿明学习之路

    LeetCode 717. 1比特与2比特字符

    题目 有两种特殊字符。第一种字符可以用一比特0来表示。第二种字符可以用两比特(10 或 11)来表示。 现给一个由若干比特组成的字符串。 问最后一个字符是否必定为一个一比特字符。 给定的字符串总是由0结束。 示例 1: 输入: bits = [1, 0, 0] 输出: True 解释: 唯一的编码方式是一个两比特字符和一个一比特字符。 所以最后一个字符是一比特字符。 示例 2: 输入: bits = [1, 1, 1, 0] 输出: False 解释: 唯一的编码方式是两比特字符和两比特字符。 所以最后一个字符不是一比特字符。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/1-bit-and-2-bit-characters 著作权归领扣网络所有。 2.

    37610发布于 2020-07-13
  • 来自专栏Python基础、进阶与实战

    Python基础-2 数字、字符串和列表

    取余(%)操作即求余数,例如17除以3 得5余2,因此17%3就等于2。 >>> 17 /3 5.666666666666667 >>> >>> 17 //3 5 >>> 17 %3 2 >>> 5 *3 +2 17 ** 运算符可以计算次方 >>> 5 **2 # 5 2. 字符串 除了数字,Python还可以操作文字。在Python中称为字符串,形式上使用单引号’’,或双引号""括起来,这两种写法没什么区别。 \会将后面字符转为转义字符,但是在写文件名时会很不方便,这时可以使用原始字符串(raw string)。引号前加r即可。 print(word[:2], word[4:], word[-2:]) # Py on on # 字符串数不可变序列,要生成不同的字符串,需要新建一个字符串: print('J'+word[1:]

    2.8K20编辑于 2022-12-06
领券