C言語の配列の大きさについて
Posted: 2009年6月24日(水) 00:32
こんにちは。
質問させてください。
まず、ある関数内でtest_str配列の大きさを100で定義しておき以下のようなプログラムを組みます。
void test(int n){
char *test_str[100];
// 開始位置を探索
int startpoint;
int endpoint;
for(i=0; i<n; i++){
if(strcmp(str, "<<●>>")==0){
startpoint = i;
break;
}
}
// 終了位置を探索
for(i=startpoint+1; i<n; i++){
if(strcmp(str, "<</●>>")==0){
endpoint = i;
break;
}
}
}
ここで、test_str配列のサイズは100もいらず、必要なのは
endpoint - startpoint + 1
だけで済んだとしたとき、このとき、配列の大きさを再定義することはできませんか?
VBではredimに相当することをやりたいのです。
VBから入ったためか、C言語に非常に苦戦しております。
どなたか教えてください。
質問させてください。
まず、ある関数内でtest_str配列の大きさを100で定義しておき以下のようなプログラムを組みます。
void test(int n){
char *test_str[100];
// 開始位置を探索
int startpoint;
int endpoint;
for(i=0; i<n; i++){
if(strcmp(str, "<<●>>")==0){
startpoint = i;
break;
}
}
// 終了位置を探索
for(i=startpoint+1; i<n; i++){
if(strcmp(str, "<</●>>")==0){
endpoint = i;
break;
}
}
}
ここで、test_str配列のサイズは100もいらず、必要なのは
endpoint - startpoint + 1
だけで済んだとしたとき、このとき、配列の大きさを再定義することはできませんか?
VBではredimに相当することをやりたいのです。
VBから入ったためか、C言語に非常に苦戦しております。
どなたか教えてください。