PDA

View Full Version : Công cụ lập trình C++ Sử dụng CodeBlocks, không build được source code?



Mr.Phong
31-07-2008, 03:23 PM
khi mình tạo 1 file và chay chương trình nho nhỏ , nó chạy không được , nó hiện lên thông báo là , nhưng khi chạy 1 chương trình tạo bằng Borlandc 3.1 thỉ được , ai biết thì chỉ giùm mình

QuangHoang
31-07-2008, 04:11 PM
Mình dùng cái này lâu rồi vào nó chạy rất ổn với hầu hết các chương chình nhỏ, nếu có thắc mắc khi sử dụng không đc thì bạn post một vài cái code mà bạn không chạy được lên, rồi mình sẽ sửa cho nó chạy được như vậy bạn sẽ biết nguyên nhân.
Một số chú ý khi dùng Code::Block, để build và run nhấn F9, hàm main(); không thể là void main(); , không có clrscr();settextcolor();....(vài cái nữa), nếu cần dùng bạn phải dùng một hàm viết lại các hàm này (có rất nhiều trên diễn đàn), để chạy C++ cần khai bào using namespace std; hoặc std::(trước mỗi lệnh), vài vấn đề nhỏ vậy thôi.

Mr.Phong
01-08-2008, 10:53 AM
đây là code của mình.

#include <iostream>
#include <conio.h>
using namespace std;

int main()
{
int so,tc=0,tl=0;
cout<<"Nhap vao 1 so: ";cin>>so;
for(int i=0;i<=so;i++)
{
if(i%2==0)
tc=tc+i;
else
tl=tl+i;
}
cout<<"Tong chan cua :"<<so<<" la: "<<tc<<"\t Tong le: "<<tl;
getch();
return 0;
}
nó không chạy ra màn hình Dos như m vẫn xài trên BorlanDC 3.1, và cũng chẳng thấy báo lỗi gì hết T_T

Hok_bik_zi
01-08-2008, 11:27 AM
tôi test code của bạn vẫn chạy tốt, chả có gì. Trừ khi bạn tạo single file rồi ko lưu với phần mở rộng là cpp

QuangHoang
01-08-2008, 05:25 PM
Mình chạy thử bằng Code::Block rồi, 0 error, 0 warnings
Mỗi tội kết quả tính là sai :))

Mr.Phong
02-08-2008, 08:18 PM
hix, qua mấy bữa vào mấy diễn đàn đọc cách sử dụng thì... cũng chẳng được gì hết, trong khi người ta chạy ầm ầm .
giờ mình nói cách mình tạo 1 Project để các pác coi em sai xót chỗ nào nha ( lần này chẳng được thì về Xài Borlandc 3.1 dù CPU chạy hơi cao) :
Đầu tiên em tải bản Code :: Block 8.02 về từ trang chủ của nó http://downloads.sourceforge.net/codeblocks/codeblocks-8.02-setup.exe (chỉ tải cái này ko biết có đủ không)
sao đó cài đặt bình thường , Tạo 1 Project (vì có người nói tạo project mới chạy được) File -> New -> Project -> Console Application -> C++ -> chọn Compiler Borlandc c++ 5.5 (mới cài cái này xong) .
thế là em viết đoạn code như trên nhưng nó chẳng có chạy ,
nguyên nhân có thể có thể em cài đặt thiếu , học làm ko đúng , pác nào bít chỉ giùm em .Thanks

(:#) cuối cùng em đã xài được sơ sơ Code::Blode rồi , em phải chạy tận ddth mới hiểu được , dù sao cũng cám ơn mấy pác đã hướng dẫn lâu nay . Thanks(:-)h

amidamaru
18-07-2010, 08:39 AM
mình mới chuyển sang dùng thử CodeBlocks, các bạn xem web tham khảo: http://codeblocks.org
- mình dùng Win Vista, trong web này http://www.codeblocks.org/downloads/binaries có 2 file set up dùng cho HĐH windows, mình đã down cái thèn này: codeblocks-10.05-setup.exe
- sau khi tải về máy, install, mình mở lên xài thử.
- Mình open 1 file đã có sẵn trong máy để compile, nhưng khi "build" thì nó "ỉm re" ko hoạt động j.
Còn khi "run" nó hiện 1 cái bảng thông báo: "it seems that this file has not been built yet. Do you want to build it?" --> "Yes/ No/ Cancel" ---> mình chọn "Yes", nó lại im re.
Không biết đã bị lỗi j? Trong thẻ Settings có thiết lập "GNU GCC compiler" rùi.
Các bạn đã dùng wa thèn này chưa, please help me!

C&C++
18-07-2010, 08:43 AM
Mình cài trên Fedora mãi chẳng được,nó chạy mãi cái service
đây là bức ảnh nó chạy mãi,các bạn xem giúp mình nhé

vudainghia
02-12-2011, 11:28 PM
em có bài toán sau em cũng cài code::blocks rồi nhưng không biết mở file này thế nào để chương trình chạy. pro nào giúp em với em gà quá.hix
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#define MAX 100
#define pSIZE 3 //co 3*3

int begin[pSIZE][pSIZE] = {{2,8,3},{1,6,4},{7,0,5}};
int end[pSIZE][pSIZE] = {{1,2,3},{8,0,4},{7,6,5}};

typedef struct
{
int index;
int s[pSIZE][pSIZE];
int f,g,h;
int dad;
} state;

state fs;
state gs;
state bs;
state cs[MAX];
state open[MAX],close[MAX];
int openSize,closeSize;
int zx,zy;
int id=0,g=0;

void Line()
{
printf("\n ------------------------------------------------\n");
}

void display(state a, char s[100])
{
printf("\n %s: \n", s);
int i,j;
for (i=0;i<pSIZE;i++)
{
printf("\n\t");
for (j=0;j<pSIZE;j++)
{
printf(a.s[i][j]==0 ? " " : " %d ",a.s[i][j]);
}
}
printf("\t (id=%d f=%d g=%d h=%d dad=%d)\n", a.index, a.f, a.g, a.h, a.dad);
}

void show(state a[MAX], int size)
{
int i;
printf(" [SIZE=%d]", size);
for (i=1;i<=size;i++)
display(a[i],"\tTrang thai con"); //display: su bay ra,hien ra == hien thi
}

void init()
{
int i,j;
for (i=0;i<pSIZE;i++)
for (j=0;j<pSIZE;j++)
{
fs.s[i][j]=begin[i][j];
gs.s[i][j]=end[i][j];
}
fs.index = 0; //chi so trang thai
fs.dad = 0; //trang thai truoc do sinh ra no
display(fs,"Trang thai ban dau");
display(gs,"Trang thai dich");
}

bool Equals(state a, state b) //equals: bang nhau
{
int i,j;
for (i=0;i<pSIZE;i++)
for (j=0;j<pSIZE;j++)
if (a.s[i][j]!=b.s[i][j])
{
return false;
break;
}
return true;
}

state &add(state a, state b[MAX], int &size)
{
size++;
int i,j;
b[size] = a;
/*
for (i=0;i<pSIZE;i++)
for (j=0;j<pSIZE;j++)
b[size].s[i][j]=a.s[i][j];
b[size].f = a.f;
b[size].g = a.g;
b[size].h = a.h;
b[size].index = a.index;
b[size].dad = a.dad;*/
}

state &remove(state a, state b[MAX], int &size)
{
int i,j;
for (i=0;i<=size;i++)
if (Equals(a,b[i]))
for (j=i+1;j<size;j++)
b[j-1]=b[j];
size--;
}

void PosZero(state a, int &zx, int &zy) //posZero: xac dinh vi tri cua o trong
{
int i,j;
for (i=0;i<pSIZE;i++)
for (j=0;j<pSIZE;j++)
if (a.s[i][j]==0)
{
zx = j;
zy = i;
break;
}
}

int hSub(int a, int row, int col) //khoang cach cua o hien tai sai den vi tri dung
{
int i,j;
int result=0;
for (i=0;i<pSIZE;i++)
for (j=0;j<pSIZE;j++)
if (gs.s[i][j]==a)
{
result = abs(i-row) + abs(j-col);
break;
}
return result;
}

int h(state a) //ham tinh tong cac hi
{
int i,j;
int sum=0;
putchar('\n');
for (i=0;i<pSIZE;i++)
for (j=0;j<pSIZE;j++)
if (a.s[i][j] != gs.s[i][j])
{
sum += hSub(a.s[i][j],i,j);
printf("\t h[%d]=%d", a.s[i][j], hSub(a.s[i][j], i, j) );
}
return sum;
}

void swap(int &a, int &b) //swap: ham doi cho
{
int t;
t = a;
a = b;
b = t;
}

bool isIn(state a, state b[MAX], int size)
{
int i;
for (i=0; i<=size; i++)
if (Equals(b[i], a))
{
return true;
break;
}
return false;
}

state process(state &a)
{
if (isIn(a,open,openSize))
{
a.g = g;
a.h = h(a);
if (a.g + a.h < a.f)
{
remove(a,open,openSize);
a.f = a.g + a.h;
a.dad = bs.index;
add(a,open,openSize);
}
}
if (isIn(a,close,closeSize))
{
a.g = g;
a.h = h(a);
if (a.g + a.h < a.f)
{
remove(a,close,closeSize);
a.f = a.g + a.h;
a.dad = bs.index;
add(a,close,closeSize);
}
}
if (!isIn(a,open,openSize) && !isIn(a,close,closeSize)) //phu dinh
{
a.g = g;
a.h = h(a);
a.f = a.g + a.h;
a.dad = bs.index;
add(a,open,openSize);

}
}

void CreateNextStates() // ham de sinh ra cac trang thai ke tiep
{
g++;
int zx,zy;
PosZero(bs, zx, zy);
//printf("\n zx=%d zy=%d", zx,zy);

if (zx - 1 >= 0) // left: trai
{
cs[++id] = bs;
cs[id].index = id;
swap(cs[id].s[zy][zx] , cs[id].s[zy][zx-1]);
process(cs[id]);
}
if (zx + 1 < pSIZE) //right: phai
{
cs[++id] = bs;
cs[id].index = id;
swap(cs[id].s[zy][zx] , cs[id].s[zy][zx+1]);
process(cs[id]);
}
if (zy - 1 >= 0) // up: tren
{
cs[++id] = bs;
cs[id].index = id;
swap(cs[id].s[zy][zx] , cs[id].s[zy-1][zx]);
process(cs[id]);
}
if (zy + 1 < pSIZE) //down: duoi
{
cs[++id] = bs;
cs[id].index = id;
swap(cs[id].s[zy][zx] , cs[id].s[zy+1][zx]);
process(cs[id]);
}
}

state BestState(state a[MAX],int size) //trang thai tot hon
{
int i;
int pos; //vi tri
int min=10000;
for (i=1;i<=size;i++)
if (a[i].f<min && a[i].f>0)
{
min = a[i].f;
pos = i;
}
return a[pos];
}

void Backtrack(state a, state b[MAX], int size) //de quy lan nguoc de tim duong di trong CLOSE
{
int i;
char bf[5];
if (a.dad == 0)
{
printf("");
}
else
{
for (i=1; i<=size; i++)
if (b[i].index == a.dad)
{
display(b[i],"\t:-------");
Backtrack(b[i],b,size);
}
}
}

void solve()
{
bs = fs;
openSize = closeSize = 0;
add(bs,open,openSize);
bool stop=false;

while(!stop)
{
display(bs,"BEST STATE: ");
remove(bs,open,openSize);
add(bs,close,closeSize);
if (Equals(bs,gs))
{
printf("\n DA TIM THAY LOI GIAI");
stop = true;
//break;
}
else
{
CreateNextStates();
}
if (openSize>0)
bs = BestState(open,openSize);
printf("\n OPEN: \n");
show(open,openSize);
printf("\n CLOSE: \n");
show(close,closeSize);
Line();
getch();
}
display(gs,"GOAL"); //dich
Backtrack(close[closeSize],close,closeSize);
display(fs,"BEGIN");
}

int main()
{
init();
Line();
solve();
getch();
return 0;
}

Wazi Armstrong
03-12-2011, 12:20 AM
Hồi xưa mình cũng bị nhưng mà mình quên mất cách sửa rồi
Hình như là link lại gcc với c++ vào đúng vị trí (đối với ai dùng fedora, ubuntu thì ko phải chỉnh gì thì phải)

mp121209
03-12-2011, 10:30 AM
mình mới chuyển sang dùng thử CodeBlocks, các bạn xem web tham khảo: http://codeblocks.org
- mình dùng Win Vista, trong web này http://www.codeblocks.org/downloads/binaries có 2 file set up dùng cho HĐH windows, mình đã down cái thèn này: codeblocks-10.05-setup.exe
- sau khi tải về máy, install, mình mở lên xài thử.
- Mình open 1 file đã có sẵn trong máy để compile, nhưng khi "build" thì nó "ỉm re" ko hoạt động j.
Còn khi "run" nó hiện 1 cái bảng thông báo: "it seems that this file has not been built yet. Do you want to build it?" --> "Yes/ No/ Cancel" ---> mình chọn "Yes", nó lại im re.
Không biết đã bị lỗi j? Trong thẻ Settings có thiết lập "GNU GCC compiler" rùi.
Các bạn đã dùng wa thèn này chưa, please help me!

Bạn thử fix lại settings, xem trên máy đã có compiler chưa, GNU GCC trên máy đã cài đặt chưa, ... Và tìm hiểu về cách config code::blocks, rồi cách tạo project, cách build, cách run, ... nhé

PT_Rabbit
07-12-2011, 08:39 PM
Theo mình nghĩ do lỗi thư viện nó không đọc được á, hôm bữa máy bạn mình cũng bị vậy nhưng mình làm theo cách sau đây thì nó build bình thường. Bạn vào settings --> compiler and debugged... sau đó chọn tab Toochain executables. Chỗ Compiler's installation dicrectory, sửa lại đường dẫn là C:\Program Files\CodeBlocks\MinGW rồi ok, thế là xong. Bạn thử thử xem. Chúc bạn thành công!!

kidsoul
25-07-2013, 01:55 PM
Theo mình nghĩ do lỗi thư viện nó không đọc được á, hôm bữa máy bạn mình cũng bị vậy nhưng mình làm theo cách sau đây thì nó build bình thường. Bạn vào settings --> compiler and debugged... sau đó chọn tab Toochain executables. Chỗ Compiler's installation dicrectory, sửa lại đường dẫn là C:\Program Files\CodeBlocks\MinGW rồi ok, thế là xong. Bạn thử thử xem. Chúc bạn thành công!!
trong ubuntu thì như nào hả cậu?

INTP
25-07-2013, 07:19 PM
trong ubuntu thì như nào hả cậu?

cũng vào Settings -> Chọn GNU GCC Compiler -> tab Toolchain Executables
installation path là /usr
C compiler là gcc
C++ compiler là gcc
Linker for dynamic libs là g++
Linker for static libs là ar
Make program là make

mà cho hỏi đã install compiler chưa cái đã? Mở Terminal (Ctrl Alt T) lên, gõ
gcc --version
g++ --version
xem có g++ và gcc ko, version mấy

Lee Huynh
25-07-2013, 08:15 PM
compier and debugger -> global compier settings -> toolchain executables -> auto - detect