本篇內(nèi)容主要講解“C語(yǔ)言中怎么實(shí)現(xiàn)兩個(gè)字符串的比較”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“C語(yǔ)言中怎么實(shí)現(xiàn)兩個(gè)字符串的比較”吧!
讓客戶(hù)滿(mǎn)意是我們工作的目標(biāo),不斷超越客戶(hù)的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶(hù),將通過(guò)不懈努力成為客戶(hù)在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊(cè)、雅安服務(wù)器托管、營(yíng)銷(xiāo)軟件、網(wǎng)站建設(shè)、同德網(wǎng)站維護(hù)、網(wǎng)站推廣。
解題思路:使用兩個(gè)指針指向兩個(gè)字符串首部,逐個(gè)往后進(jìn)行比較,不相等的時(shí)候則將數(shù)據(jù)進(jìn)行相減,作為返回值。
答案:
#include#include int mystrcmp(char *str1, char *str2) { char *ptr1 = str1; char *ptr2 = str2; int res; while (*ptr1 != '\0' && *ptr2 != '\0') { if (*ptr1 != *ptr2) { res = *ptr1 - *ptr2; break; } ptr1++; ptr2++; } if (*ptr1 == '\0' || *ptr2 == '\0') {//注意一個(gè)字符串到達(dá)結(jié)尾或者兩個(gè)都到達(dá)結(jié)尾的情況 res = *ptr1 - *ptr2; } return res; } int main() { char buf1[1024] = { 0 }; char buf2[1024] = { 0 }; while (1) { printf("Please enter two strings:\n"); gets_s(buf1, 1024); gets_s(buf2, 1024); printf("mystrcmp:%d", mystrcmp(buf1, buf2)); printf("\n"); } system("pause"); return 0; }
到此,相信大家對(duì)“C語(yǔ)言中怎么實(shí)現(xiàn)兩個(gè)字符串的比較”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢(xún),關(guān)注我們,繼續(xù)學(xué)習(xí)!