Latest web development tutorials
×

C หลักสูตร

C กวดวิชาภาษา C แนะนำโดยย่อ C การตั้งค่าสภาพแวดล้อม C โครงสร้างหลักสูตร C ไวยากรณ์พื้นฐาน C ชนิดข้อมูล C ตัวแปร C คงที่ C ประเภทการจัดเก็บ C ผู้ประกอบการ C ผู้พิพากษา C การไหลเวียน C ฟังก์ชัน C การกำหนดขอบเขตกฎระเบียบ C แถว C ชี้ C เชือก C โครงสร้าง C สหภาพ C ฟิลด์บิต C typedef C อินพุตและเอาต์พุต C การอ่านออกเขียนเอกสาร C preprocessor C ส่วนหัว C ปลดเปลื้อง C จัดการข้อผิดพลาด C recursion C พารามิเตอร์ตัวแปร C จัดการหน่วยความจำ C บรรทัดคำสั่ง C คลาสสิก 100 ราย

C ห้องสมุดมาตรฐาน

C ห้องสมุดมาตรฐาน - คู่มืออ้างอิง C ห้องสมุดมาตรฐาน - <assert.h> C ห้องสมุดมาตรฐาน - <ctype.h> C ห้องสมุดมาตรฐาน - <errno.h> C ห้องสมุดมาตรฐาน - <float.h> C ห้องสมุดมาตรฐาน - <limits.h> C ห้องสมุดมาตรฐาน - <locale.h> C ห้องสมุดมาตรฐาน - <math.h> C ห้องสมุดมาตรฐาน - <setjmp.h> C ห้องสมุดมาตรฐาน - <signal.h> C ห้องสมุดมาตรฐาน - <stdarg.h> C ห้องสมุดมาตรฐาน - <stddef.h> C ห้องสมุดมาตรฐาน - <stdio.h> C ห้องสมุดมาตรฐาน - <stdlib.h> C ห้องสมุดมาตรฐาน - <string.h> C ห้องสมุดมาตรฐาน - <time.h>

C ทำงานห้องสมุด - memmove ()

C ห้องสมุดมาตรฐาน - <สตริง> C ห้องสมุดมาตรฐาน - <สตริง>

ลักษณะ

Cทำงานห้องสมุดโมฆะ * memmove (void * str1, โมฆะ const * str2, size_t n) สำเนา nตัวละครจากstr2str1 ไปแต่ที่ทับซ้อนกันบล็อกหน่วยความจำในเรื่องนี้memmove (กว่า) memcpy () วิธีการที่ปลอดภัยมากขึ้น หากพื้นที่เป้าหมายและพื้นที่ทับซ้อนแหล่งที่มาแล้ว memmove () เพื่อให้แน่ใจว่าสตริงแหล่งที่มาก่อนที่มันจะถูกปกคลุมด้วยภูมิภาคไบต์ที่ทับซ้อนกันคัดลอกไปยังพื้นที่เป้าหมายเนื้อหาของพื้นที่แหล่งที่มาคัดลอกจะมีการเปลี่ยนแปลง หากพื้นที่เป้าหมายและพื้นที่แหล่งที่ไม่ทับซ้อนและ memcpy ฟังก์ชัน () เป็นฟังก์ชั่นเดียวกัน

คำแถลง

นี่คือ memmove () ฟังก์ชั่นของการประกาศ

void *memmove(void *str1, const void *str2, size_t n)

พารามิเตอร์

  • str1 - จุดไปยังอาร์เรย์ปลายทางสำหรับการจัดเก็บเนื้อหาที่คัดลอกพิมพ์หล่อจะถือเป็นโมฆะชี้ *
  • str2 - ชี้ไปคัดลอกแหล่งข้อมูลประเภทหล่อจะถือเป็นโมฆะชี้ *
  • n - จำนวนไบต์ที่จะคัดลอก

ราคาย้อนกลับ

ฟังก์ชั่นนี้กลับชี้ไปชี้ str1 เก็บปลายทาง

ตัวอย่าง

ตัวอย่างต่อไปนี้แสดงให้เห็นถึง memmove ฟังก์ชัน () ถูกนำมาใช้

#include <stdio.h>
#include <string.h>

int main ()
{
   const char dest[] = "oldstring";
   const char src[]  = "newstring";

   printf("Before memmove dest = %s, src = %s\n", dest, src);
   memmove(dest, src, 9);
   printf("After memmove dest = %s, src = %s\n", dest, src);

   return(0);
}

Let 's รวบรวมและเรียกใช้โปรแกรมข้างต้นซึ่งจะส่งผลต่อไปนี้:

Before memmove dest = oldstring, src = newstring
After memmove dest = newstring, src = newstring

C ห้องสมุดมาตรฐาน - <สตริง> C ห้องสมุดมาตรฐาน - <สตริง>