首页 > 其他分享 >22-11-5学习记录

22-11-5学习记录

时间:2022-11-05 21:06:00浏览次数:81  
标签:11 assert const 22 记录 strcat char arr2 arr1

1,<assert.h>   assert()  {在传参时要养成使用assert的习惯,可以帮助我们找到程序bug}

    作用:断言,判断指针是否为空,检查参数是否满足要求,以免引起程序崩溃

    例:assert(arr!=NULL)     assert(light<eight)

2,三步反转法

  左旋n个数:将“abcdefghi”的前n个元素放到最后->cdefghiab

  第一步:分成两部分  前n项   ab      剩余的 cdefghi

  第二步:将两部分分别逆序   ba   ihgfedc

  第三步:将所有元素逆序   cdefghiab

3,<string.h>  strcat()   char *strcat( char *strDestination, const char *strSource );

作用:字符串后面追加一个字符串

例:char arr1[]="abc"

char arr2[]="hij"

strcat(arr1,arr2)-->arr1[]="abchij"

原理:a b c \0       h i j \0

先找到arr1的\0,再将arr2的首元素替换arr1的\0,然后依次放入,直到\0  {注:arr1的空间要足够大,否则会非法访问空间)

注意:arr1{strcat(arr1,arr1)}不能追加自身,因为覆盖\0的同时没有了结束标志,会一直追加下去,是系统奔溃     

4,  <string.h>  strncat()    char *strncat( char *strDest, const char *strSource, size_t count );    

   和strcat相似,但规定了传arr2的长度,如果提前遇到\0依旧会停止

   char arr1[20] = { "abcd" };

   char arr2[] = "ef\0gh";

   strncat(arr1, arr2, 4);----->arr1[20]="abcdef";

5,<string.h>   strstr()     char *strstr( const char *string, const char *strCharSet );

  作用:查找子串,arr1中是否有arr2

  找到了返回arr1中arr2首元素字符的地址

  未找到返回NULL










标签:11,assert,const,22,记录,strcat,char,arr2,arr1
From: https://blog.51cto.com/u_15815270/5826068

相关文章

  • 11.5.2
    #include<stdio.h>#include<math.h>doublecm(doublex,inty);intmain(){doublea; intb; scanf("%lf%d",&a,&b); cm(a,b);   return0;}doublecm(double......
  • 11.5.3
    #include<stdio.h>doublehs(intx);intmain(){ inta,s,d; scanf("%d%d%d",&a,&s,&d); inti; for(i=a;i<=s;i+=d) {hs(i); }    return0;}doublehs(......
  • 11.5.4
    #include<stdio.h>#include<math.h>intan(intx,inty);intmain(){ inta,n; scanf("%d%d",&a,&n);  an(a,n);  return0;}intan(intx,inty){ inti,......
  • CSP-S2022退役记
    这几天抽空把\(CSP-S\)的题改了一下,算是明白我是什么东西了。反正本次\(CSP-S\)连暴力都没能写满,我在知道\(T3\)暴力怎么写后觉得太麻烦,就去搞\(T1\)了,导致一分也......
  • 1106. 解析布尔表达式
    给你一个以字符串形式表述的 布尔表达式(boolean)expression,返回该式的运算结果。有效的表达式需遵循以下约定:"t",运算结果为True"f",运算结果为False"!(expr)",运算过程......
  • 2022-2023-1 20221322《计算机基础与程序设计》第十周学习总结
    作业信息这个作业属于哪个课程<班级的链接>(2022-2023-1-计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(2022-2023-1计算机基础与程序设计第十周作业......
  • 2022.45 AIGC
    从语音到静态画面再到动态影像,AIGC(人工智能生成内容)对短视频完成了全面渗透。输入文案,自动合成语音,AI已成为当下短视频批量生产的标配;选一首大众熟悉的歌曲,让AI根据歌词生......
  • 川渝杯2022个人决赛部分wp
    re-babyre1、下载得到chall.txt,使用file命令查看文件类型,该文件是python文件2.这里将chall.txt重命名为chall.pyc使用在线python反编译得到python(https://tool.lu/pyc)fro......
  • 【115】
    1106. 解析布尔表达式 给你一个以字符串形式表述的 布尔表达式(boolean) expression,返回该式的运算结果。有效的表达式需遵循以下约定:"t",运算结果为 ......
  • Java学习——11.06
    Java的第一个大关。scanf函数的不同。这可能就是收到C语言的思维影响吧,Java中的scanf函数的运用和先前引用实例变量一样,要先new一个。例:Scannerscanner=newScann......