level 9
我在VC60 中调试#include
#include
int main (){ int i,n; int * buffer; printf ("How long do you want the string? "); scanf ("%d", &i); buffer = (int*) malloc (i+1); if (buffer==NULL) exit (1); for (n=0; n
2004年09月30日 02点09分
1
level 9
以上是221.202.22.*的朋友提出的问题,希望以后别外开帖讨论,不要混在别的主题里。6 回复:希望吧主多贴代码 在vc6.0动态数组是用new和delete。 作者: elva6401 封 2004-9-30 09:28 回复此发言 删除此发言
2004年09月30日 02点09分
2
level 9
elva6401说的new delete是C++里的,不是C里的,C里用MALLOC FREE是对的。另外,我在DEVCPP GCC3.3里运行该程序是正常的,不知道那位朋友为什么在FREE处出错。请把错误的具体提示贴出来,同时也希望大家学会怎样提问。
2004年09月30日 02点09分
3
level 0
错误提示 after normal block(#18) at 0x00780eb0
2004年09月30日 03点09分
4
level 9
哪位用VC的朋友帮忙调试一下。我早已不用VC了,回答不了这个问题。
2004年09月30日 03点09分
5
level 7
他在VC60 中调试,Vc60就是运行c++代码的。
2004年09月30日 04点09分
7
level 9
6:参见下面的帖子。http://post.baidu.com/f?ct=335609856&tn=baiduPostBrowser&sc=31305340&z=4201196&pn=0&rn=50&lm=0&word=c%D3%EF%D1%D4#313053407:VC是C/C++的编译器,既可以编译C,也可以编译C++
2004年09月30日 04点09分
8
level 0
int * buffer;buffer = (int*) malloc (i);这样可以申请一buffer[i]动态数组,如果要申请一buffer[i][i]动态数组,怎么办?是不是:int * buffer;buffer = (int*) malloc (i*i);望回答。
2004年11月10日 07点11分
9
level 9
9:不是的.我给一个例子,具体请参考置顶帖子中的深入理解C语言指针的奥秘:http://post.baidu.com/f?kz=5932198int main(int argc,char**argv){ int **a; a=(int **)malloc(sizeof(int *)*10); for(int i=0;i<10;i++) { a[i]=(int *)malloc(sizeof(int)*10); } for(int i=0;i<10;i++)for(int j=0;j<10;j++)a[i][j]=i*j; for(int i=0;i<10;i++)for(int j=0;j<10;j++)printf("%d\t",a[i][j]); for(int i=0;i<10;i++)free(a[i]); free(a); return 0;}
2004年11月10日 08点11分
10
level 9
11:你是说我10楼的有问题吗?你用的什么编译器?运行时有什么错误提示?
2004年11月13日 15点11分
12
level 1
把buffer = (int*) malloc (i+1);改成 buffer = (int*)malloc (sizeof(n)*i);就可以在vc下通过编译了我想这是因为malloc所开辟的内存空间不足造成的错误
2004年11月14日 03点11分
13
level 1
把buffer = (int*) malloc (i+1);改成 buffer = (int*)malloc (sizeof(n)*i);就可以在vc下通过编译了我想这是因为malloc所开辟的内存空间不足造成的错误
2004年11月14日 04点11分
14
level 0
buffer = (int **) malloc (i+1);
2006年04月20日 00点04分
15
level 0
老兄,你要创建一个数组当然要分配(int)*i的空间了,你只分配i的空间怎么够啊, 换为(int*) malloc (sizeof(int)*i)就OK!
2006年08月17日 02点08分
16
level 1
搂主 你那个buffer = (int*) malloc (i+1); 你认为分配了多少内存,我可以明确地告诉你 分配了(i+1)byte如果你是要分配 i 个 int 那就是 (i*sizeof(int))基础啊!
2007年02月14日 18点02分
17
level 1
hey thanks! i got the same problem and now i'v handled it~
2008年06月30日 07点06分
18
level 5
看了17L的 才明白~~~"How long do you want the string? "这句话越看越别扭 呵呵~~~应该是 "How long do you want the string is? "
2008年07月01日 16点07分
20