C语言:通过指针对字符串进行拼接

//

//  main.c

//  Pointer_stringcat

//

//  Created by ma c on 15/8/2.

//  Copyright (c) 2015年 bjsxt. All rights reserved.

//  要求:使用指针连接字符串,并将连接后的字符串输出到屏幕上。

#include <stdio.h>

#include<string.h>

void Pointer_stringcat(char *str1,const char *str2)

{

while (*(str1++)!=‘\0‘);     //一直将指向str1的指针移到字符串的末尾

str1--;

while (*str2!=‘\0‘)

{

*(str1++) = *(str2++);  //开始连接

}

*str1 = ‘\0‘;               //连接完后,添加上字符串结束标识符

}

int main(int argc, const char * argv[])

{

char s1[] = "hello ";     //这个是一个字符串变量,字符串的值可以被修改

char *s2 = "world!";      //这个是一个字符串常量,不能更改字符串的值

//char s1[] = "hello ";

//char s2[] = "world!";

char const *pt = s1;       //始终不改变pt的指向,pt一直指向s1的首地址

Pointer_stringcat(s1,s2);  //调用自定义的字符串连接函数

puts(pt);

return 0;

}

时间: 2025-01-02 19:12:10

C语言:通过指针对字符串进行拼接的相关文章

[C语言]进阶|指针与字符串

------------------------------------------------------------------------------------ 回顾:[C语言]指针与字符串 指针的使用: /** * main.c by weiChen in 2015-5-4 */ #include <stdio.h> //定义函数体,使在main方法中能调用 void swap(int *pa, int *pb); void minmax(int c[], int len, int

C语言中指针和字符串中的一些小结

<pre name="code" class="objc"><span style="font-family: Arial, Helvetica, sans-serif;">void a_A(char *str){</span> for (int i =0; *(str+i) != '\0'; i++) { if (*(str+i) >= 'a' && *(str+i) <= 'z'

嵌入式 Linux C语言(五)——指针与字符串

嵌入式 Linux C语言(五)--指针与字符串 一.字符串简介 1.字符串声明 声明字符串的方式有三种:字面量.字符数组.字符指针. 字符串字面量是用双引号引起来的字符序列,常用来进行初始化,位于字符串字面量池中,字符字面量是用单引号引起来的字符. 字符串字面量池是程序分配的一块内存区域,用来保存组成字符串的字符序列.多次用到一个字符串字面量时,字符串字面量池中通常只保存一份副本,一般来说字符串字面量分配在只读内存中,是不可变的,但是当把编译器有关字面量池的选项关闭时,字符串字面量可能生成多个

用c语言指针处理字符串

字符串的处理方法有两种:一种方法是使用字符数组处理字符串,另一种是方法是使用字符指针处理字符串. 后一种也是c语言比较常用的方法.下面我们来看一个列子: 1 #include<stdio.h> 2 int main() 3 { 4 char a[50],*str1,*str2; 5 char b[]="I am student."; 6 str1 = a; 7 str2 = b; 8 while((*str1=*str2)!='\0') 9 { 10 str1++; 11

网易云课堂程序设计入门--C语言第七周:指针与字符串学习笔记

====================================== 第七周:指针与字符串学习笔记 网易云课堂 程序设计入门–C语言 指针与字符串 学习笔记 ====================================== 7-1指针初步 7-1-1类型大小与取地址运算 sizeof是一个运算符 给出某个变量货类型在内存中所占据的字节数 sizeof(int); sizeif(i); double变量在内存中占据的空间是int变量的两倍 { int a; a =6; prin

C语言之深入指针与字符串

<span style="font-family:KaiTi_GB2312;font-size:24px;">#include<stdio.h> #include<stdlib.h> //要使用malloc(),必须包含此库文件 void main() { char count, *ptr1, *p; ptr1 = malloc(27*sizeof(char)); ptr1[26] = 0;//字符串要加0 if (ptr1 == NULL) { p

【C语言学习笔记】字符串拼接的3种方法 .

昨天晚上和@buptpatriot讨论函数返回指针(malloc生成的)的问题,提到字符串拼接,做个总结. [cpp] view plaincopyprint? #include<stdio.h> #include<stdlib.h> #include<string.h> char *join1(char *, char*); void join2(char *, char *); char *join3(char *, char*); int main(void) {

C语言中指针定义的字符串和数组定义的字符串的区别

2016-12-03 数组定义字符串: 每次定义数组的时候,系统都会在内存开辟你指定数组大小的空间,并且数组中的内容对于我们是可读可写的,看如下代码: 1 #include<stdio.h> 2 int main() 3 { 4 char str[100] = "hello world"; 5 char str1[100] = "hello world"; 6 str[0] = 'd'; 7 printf("%s\n\n",str);

C语言 13-指针和字符串

本文目录 字符串回顾 一.用指针遍历字符串的所有字符 二.用指针直接指向字符串 三.指针处理字符串的注意 说明:这个C语言专题,是学习iOS开发的前奏.也为了让有面向对象语言开发经验的程序员,能够快速上手C语言.如果你还没有编程经验,或者对C语言.iOS开发不感兴趣,请忽略. 字符串回顾 一个字符串由一个或多个字符组成,因此我们可以用字符数组来存放字符串,不过在数组的尾部要加上一个空字符'\0'. char s[] = "mj"; 上面的代码定义了一个字符数组s来存储字符串"