完整代码:

 #include <stdio.h>
#include <string.h>
#include <malloc.h> #define TRUE 1
#define FALSE 0 char *
strca(char *, char *); char *
join1(char *, char *); int
main(void) {
char *a = "你好";
char *b = "de我";
printf("%s\n", strca(a, b));
} char *
strca(char *des, char *src) {
char *r = (char *)malloc(sizeof(strlen(des)) + sizeof(strlen(src)) + ); //尾部存放'\0'中终止符.
if(!r) {
printf("out of memory!\n");
return FALSE;
}
char *tmp = r; //保存首地址.
/* while( *r++ = *des++ )
*/ ; while( *des )
*r++ = *des++; while( *r++ = *src++ )
;
return tmp;
}

最近在打C基础,现在还没完全弄明白 strca 函数中,注释部分(第 29~30 行)的代码为什么不能达到想要的效果.这两天才开始研究 x86和c的disassembly,国内的资料少,再加上最近复习考研,有点忙,慢慢来吧.

c - 字符串的拼接.的更多相关文章

  1. 树形菜单的json字符串的拼接

    最近在学习权限管理, 要用到树形按钮, 但是字符串的拼接是一个难理解的问题, 然后从网上找了一个从前台用js来遍历组成这个json字符串, 很好! 但是没看懂... var data = [ {&qu ...

  2. oracle操作字符串:拼接、替换、截取、查找

    1.拼接字符串 1)可以使用“||”来拼接字符串 select '拼接'||'字符串' as str from dual 2)通过concat()函数实现 select concat('拼接', '字 ...

  3. oracle操作字符串:拼接、替换、截取、查找、长度、判断

    1.拼接字符串 1)可以使用“||”来拼接字符串 select '拼接'||'字符串' as str from dual 2)通过concat()函数实现 select concat('拼接', '字 ...

  4. 关于vb编程之字符串连接/拼接的方法与技巧

    在VB中,笔者知道的字符串的拼接方法主要有两种拼接符号,一种为"&"符,另一种则为"+"符 一.其中&连接运算符用于强制将两个表达式作为字符串连 ...

  5. MySql、Oracle、MSSQL中的字符串的拼接

    字符串的拼接 1,Mysql 在Java.C#等编程语言中字符串的拼接可以通过加号“+”来实现,比如:"1"+"3"."a"+"b ...

  6. [转]mysql中的字符串的拼接

    字符串的拼接 1,Mysql 在Java.C#等编程语言中字符串的拼接可以通过加号“+”来实现,比如:"1"+"3"."a"+"b ...

  7. Python基础学习_01字符串的拼接(字符串的格式化输出)

    # 字符串的拼接 ---字符串的格式化输出 # 字符串的拼接 ---字符串的格式化输出 name = input("name:") age = input("age:&q ...

  8. Oracle和Mysql中的字符串的拼接

    SQL允许两个或者多个字段之间进行计算,字符串类型的字段也不例外.比如我们需要 以"工号+姓名"的方式在报表中显示一个员工的信息,那么就需要把工号和姓名两个字符 串类型的字段拼接计 ...

  9. QT字符串高效拼接原理QStringBuilder

    这一篇文章讨论QT框架中QT字符串是如何实现高效拼接的. 1. QStringBuilder实例与原理 QT字符串高效拼接例子 备注: (a)上述代码仅仅在s2 = b1时一次性分配能够容纳所有字符串 ...

  10. 探讨js字符串数组拼接的性能问题

    这篇文章主要介绍了有关js对字符串数组进行拼接的性能问题,字符串连接一直是js中性能最低的操作之一,应该如何解决呢?请参看本文的介绍 我们知道,在js中,字符串连接是性能最低的操作之一. 例如: 复制 ...

随机推荐

  1. js 联系电话验证实现

         var str=$('#tele').val();                                       var regPartton=/1[3-8]+\d{9}/;  ...

  2. Delphi-Concat 函数

    函数名称 Concat 所在单元 System 函数原型 function Concat ( const String1 {,String2 ...} : string ) : string; 函数功 ...

  3. WEB兼容性之JS

    1. 获取iframe的window对象 //三种方法 window.iframeName window.frames[iframeName] document.getElementById(ifra ...

  4. 黑马程序员—C语言的判断语句

    ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.分支结构 结构化程序设计(英语:Structured programming),一种编程范型 ...

  5. javascript book

    我们很欣喜地看到,在设计模式领域,<JavaScript设计模式>(JavaScript Design Patterns)和<JavaScript编程模式>(JavaScrip ...

  6. 游标、获取本地本地多个文件、Excel数据导入、跨服务器数据拷贝、行转列示例

    )='C:\Users\Administrator\Desktop\待处理数据\顺江学校4\' ---------------------------------------------------- ...

  7. POJ3041 Asteroids(二分图最大匹配)

    题目链接. 分析: 暂略. AC代码: #include <iostream> #include <cstdio> #include <cstring> #incl ...

  8. oracle连接总结(内连接、外连接、自然连接,交叉连接,自连接)

    1.简述  1) 两个表的连接,是通过将一个表中的一列或者多列同另一个表中的列链接而建立起来的.用来连接两张表的表达式组成了连接条件.当连接成功后,第二张表中的数据就同第一张表连接起来了,并形成了复合 ...

  9. bzoj4097 [Usaco2013 dec]Vacation Planning

    Description Air Bovinia is planning to connect the N farms (1 <= N <= 200) that the cows live ...

  10. 利用C++11的function和bind简化类创建线程

    问题引出 当在类中需要创建线程时,总是因为线程函数需要定义成静态成员函数,但是又需要访问非静态数据成员这种需求,来做若干重复性的繁琐工作.比如我以前就经常定义一个静态成员函数,然后定一个结构体,结构体 ...