Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

ระบุความแตกต่างระหว่างฟังก์ชัน memcmp และ memicmp ในภาษา C


Memcmp() และ memicmp() เปรียบเทียบ n ไบต์แรกของหน่วยความจำสองช่วงตึก

  • memcmp() ทำการเปรียบเทียบเป็นอักขระที่ไม่ได้ลงนาม

  • memicmp() ทำการเปรียบเทียบเป็นอักขระ แต่ไม่ต้องสนใจอักษรตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็ก

  • ทั้งสองฟังก์ชันคืนค่าจำนวนเต็ม

  • บัฟเฟอร์หน่วยความจำสองตัวเท่ากัน (ส่งคืน 0)

  • บัฟเฟอร์แรกมากกว่าวินาที (ส่งคืน>0)

  • บัฟเฟอร์แรกน้อยกว่าวินาที(ส่งคืน<0).

โปรแกรม

โปรแกรมต่อไปนี้แสดงการใช้งานฟังก์ชัน memcmp() และ memicmp()

#include#includemain(){ char st1[]="นี่คือภาษาการเขียนโปรแกรม C"; char st2[]="นี่คือการเขียนโปรแกรม c"; ผลลัพธ์ int; ผลลัพธ์=memcmp(st1,st2,strlen(st2)); printf("\n1. ผลลัพธ์หลังจากเปรียบเทียบบัฟเฟอร์โดยใช้ memcmp"); ตรวจสอบ(ผลลัพธ์); ผลลัพธ์=memicmp(st1,st2,strlen(st2)); printf("\n2. ผลลัพธ์หลังจากเปรียบเทียบบัฟเฟอร์โดยใช้ memicmp"); ตรวจสอบ(ผลลัพธ์);}ตรวจสอบ(int x){ if(x==0) printf(" บัฟเฟอร์ st1 และ st2 เก็บข้อมูลเดียวกัน\n"); if(x>0) printf("บัฟเฟอร์ st1 ใหญ่กว่าบัฟเฟอร์ st2\n"); if(x<0) printf(“บัฟเฟอร์ st1 น้อยกว่าบัฟเฟอร์ st2\n");}

ผลลัพธ์

คุณจะเห็นผลลัพธ์ต่อไปนี้ -

<ก่อน>1. ผลลัพธ์หลังจากเปรียบเทียบบัฟเฟอร์โดยใช้ memcmp buffer st1 น้อยกว่าบัฟเฟอร์ st22 ผลลัพธ์หลังจากเปรียบเทียบบัฟเฟอร์โดยใช้บัฟเฟอร์ memicmp st1 และ st2 เก็บข้อมูลเดียวกัน