中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C語言中怎么求字符串長度和字符串反轉

發布時間:2021-07-02 17:27:25 來源:億速云 閱讀:123 作者:Leah 欄目:編程語言

這篇文章將為大家詳細講解有關C語言中怎么求字符串長度和字符串反轉,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

首先我們先在main函數里面定義一個字符串數組,char *Qwe="abcdef";然后定義兩個指針p,q同時指向字符串的首地址,p指針不動一直指向首地址,當q指針的內容!="\0"時,它的地址一直加加,當它的內容="\0"時,用q指針指向的地址減去p指針指向的地址,得到的就是該字符串的長度。

#include<stdio.h>
#include <string.h>
int my_strlen(char *Xsw)
{
	char *q=Xsw;
	char *p=Xsw;
	while (*q!='\0')
	{
		q
	}
	return (q-p);
}
int main()
{
	char *Xsw="zxcvbnm";
	int ret=my_strlen(Xsw);
	printf("%d",ret);
	return 0;
}

 通過上面的分享想必我們已經知道如何自己編寫一個代碼輸出字符串的長度了。接下來我想分享的是如何將一個字符串反轉輸出。

 首先我們的先定義一個字符串數組,char arr[]="abcdef";然后定義兩個指針char* left,char* right,left指針指向字符串的首地址,right指針指向字符串的最后一個字符的地址,斷言一下left指針和right指針是否存在,如果存在,當left指針指向的地址小于等于right指針指向的地址時,我們新定義一個變量char tmp,用類似交換數的方法,先將left指針所指向的內容放入tmp中,再將right指針指向的內容放入left中,最后將tmp中存入left指針指向的內容放入right中,left指針的地址加加,right指針的地址減減。這樣我們就實現了字符串的反轉。

#include <stdio.h>
#include <string.h>
#include <assert.h>
void reserve(char *left,char *right)
{
	assert(left);
	assert(right);
	while (left<=right)
	{
		char tmp=*left;
		*left=*right;
		*right=tmp;
		left++;
		right--;
	}	
}
void Left_move(char *arr, int n,int len)
{
	reserve(arr,arr+n-1);
	reserve(arr+n,arr+len-1);
	reserve(arr,arr+len-1);
}
int main()
{
	char arr[]="abcdef";
	int len = strlen(arr);
	Left_move(arr,3,len);
	puts(arr);
	return 0;
}

關于C語言中怎么求字符串長度和字符串反轉就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

文昌市| 奉化市| 黄平县| 如东县| 哈巴河县| 宿迁市| 綦江县| 望奎县| 黄陵县| 乐东| 宣汉县| 获嘉县| 芦溪县| 孝义市| 东兰县| 报价| 崇文区| 蒙山县| 鲁山县| 揭东县| 眉山市| 拉孜县| 博湖县| 潞西市| 鹤岗市| 大厂| 扶风县| 双桥区| 沭阳县| 城市| 陇西县| 新兴县| 扎赉特旗| 盐山县| 米易县| 柳州市| 扶余县| 九江市| 吕梁市| 东安县| 赤壁市|