Pembuangan teras (kesalahan segmentasi) dalam C/C++

PHPz
Lepaskan: 2023-09-19 17:21:03
ke hadapan
665 orang telah melayarinya

Pembuangan teras (kesalahan segmentasi) dalam C/C++

Dalam tutorial ini, kita akan membincangkan program untuk memahami lambakan teras (kesalahan segmentasi) dalam C/C++.

Ini mungkin berlaku kerana kod tersebut cuba menulis pada memori baca sahaja atau cuba mengakses lokasi memori yang rosak.

Contoh

Ubah suai rentetan literal

int main(){
   char *str;
   str = "GfG";
   *(str+1) = 'n';
   return 0;
}
Salin selepas log masuk

Mengakses di luar sempadan indeks tatasusunan

#include <iostream>
using namespace std;
int main(){
   int arr[2];
   arr[3] = 10;
   return 0;
}
Salin selepas log masuk

Mengakses alamat yang dikeluarkan

#include <stdio.h>
#include<alloc.h>
int main(void){
   int* p = malloc(8);
   *p = 100;
   free(p);
   *p = 110;
   return 0;
}
Salin selepas log masuk

Output

Abnormal termination of program
Salin selepas log masuk

Atas ialah kandungan terperinci Pembuangan teras (kesalahan segmentasi) dalam C/C++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan