系統呼叫了 abort 函式! double free or corruption (fasttop) Aborted (core dumped)
以下是我的程式碼:
#include <iostream>
using namespace std;
int main(int argc, char** argv) {
char *p;
int num;
p=new char;
while(cin>>*p){
num=sizeof(*p)/sizeof(char);
for(int i=0;i<num;i++){
cout<<char(int(p[i])-7);
}
delete p;
}
return 0;
}
上網找了一下疑似是sizeof的問題
但我是初學者不太懂為什麼出錯
請先進教我一下 謝謝
系統呼叫了 abort 函式! double free or corruption (fasttop) Aborted (core dumped)
以下是我的程式碼:
#include
using namespace std;
int main(int argc, char** argv) {
char *p;
int num;
p=new char;
while(cin>>*p){
num=sizeof(*p)/sizeof(char);
for(int i=0;i<num;i++){
cout<<char(int(p[i])-7);
}
delete p;
}
return 0;
}
上網找了一下疑似是sizeof的問題
但我是初學者不太懂為什麼出錯
請先進教我一下 謝謝
看看題目是不是要求輸入到eof
如果是的話這樣就會有問題。
系統呼叫了 abort 函式! double free or corruption (fasttop) Aborted (core dumped)
以下是我的程式碼:
#include
using namespace std;
int main(int argc, char** argv) {
char *p;
int num;
p=new char;
while(cin>>*p){
num=sizeof(*p)/sizeof(char);
for(int i=0;i<num;i++){
cout<<char(int(p[i])-7);
}
delete p;
}
return 0;
}
上網找了一下疑似是sizeof的問題
但我是初學者不太懂為什麼出錯
請先進教我一下 謝謝
使用string其實會比較好懂也以較方便
#include<iostream>
#include<string.h>
using namespace std;
int main()
{
string str, ans_str;
while(cin >> str)
{
ans_str = "";
for(int i = 0; i < str.length(); i++)
{
str[i] -= 7;
}
cout << str << endl;
}
return 0;
}
系統呼叫了 abort 函式! double free or corruption (fasttop) Aborted (core dumped)
以下是我的程式碼:
#include
using namespace std;
int main(int argc, char** argv) {
char *p;
int num;
p=new char;
while(cin>>*p){
num=sizeof(*p)/sizeof(char);
for(int i=0;i<num;i++){
cout<<char(int(p[i])-7);
}
delete p;
}
return 0;
}
上網找了一下疑似是sizeof的問題
但我是初學者不太懂為什麼出錯
請先進教我一下 謝謝
new沒設為陣列