有人可以帮我吗?为什么弹出运行时错误?在此先感谢:)我对C ++不太满意。
#include <iostream>
#include<sys/types.h>
#include<sys/ipc.h>
#include<sys/shm.h>
#include<string.h>
#include<unistd.h>
#define KEY 123456
using namespace std;
int main()
{
int shmid=shmget(KEY, 128, 0666);
char* addr1=(char*)shmat(shmid, 0, 0);
strcpy(addr1, "Hello");
int pid=fork();
if(pid!=0)
{
char* addr2=(char*)shmat(shmid,0,0);
std::cout<<"\n"<<addr1;
std::cout<<"\n"<<addr2;
sleep(2);
std::cout<<"\n"<<addr1;
std::cout<<"\n"<<addr2;
int rval=shmdt(addr2);
std::cout<<"\n"<<addr1;
std::cout<<"\n"<<addr2;
}
else
{
strcpy(addr1, "World");
}
return 0;
}
有人可以帮我吗?为什么弹出运行时错误?在此先感谢:)我对C ++不太满意。 有人可以帮我吗?为什么弹出运行时错误?在此先感谢:)我对C ++不太满意。 抱歉,我必须这样做才能使内容更大。