私はいくつかの例とビデオを見てきましたが、私が見ていないところで私の部分に基本的な誤解があるように感じます。コードを2つの別々の関数に分割して文字列長を返すようにCプログラムをコードしようとしています
#include <stdio.h>
#include <stdlib.h>
int main (void)
{
char String;
char *sendString;
char getString[100];
int counter;
*sendString = String;
printf("\nPlease enter string:\n");
fgets(getString, 100, stdin);
int calcLength(counter);
printf("los1111: %d", counter);
return 0;
}
int calcLength()
{
char *sendString[100];
int counter;
for(counter = 0; *sendString[counter] != '\0'; counter++);
printf("los: %d", counter);
return counter;
}
コードがどこで壊れているかを確認するためにいくつかのテスト 'los' printf関数がありますが、残念ながら私には何ももたらされません。どんな助けでも大歓迎です。
学術的な "strlen()"を使用する代わりに、独自の文字列長関数をコーディングしていますか?それを仮定すると、使用前(main()の前)に "calcLength"を "プロトタイプ"する必要があります。また、あなたのcalcLength関数に問題があります。つまり、具体的には、その仕事は何ですか?ヌルで終了する文字列の10分の1を特定するためです...しかし、それはどのように文字列を取得しますか?さらに、calcLengthを引数として "counter"を渡して "コール"しますが、実際のcalcLength関数では引数を指定しません。最後に、あなたが本当に渡したいと思っている "カウンター"ですか?考えていることだけ – TonyB
これを読んだ後、私は多くの情報を除外していることに気付きました。私は、 'main'関数の文字列入力の長さを別々に計算する2番目の関数を参照するクラス用のプログラムをコーディングしようとしています。私は、参照渡しが最も簡単だと思っていますが、適切な書式設定は私を逃してしまいます。 –
私はあなたにプロトタイプとその呼び出しを示します。多分関数を理解することができます:プロトタイプ:int calcLength(char *);呼び出し:counter = calcLength(getString);これがあなたを軌道に乗せることを願っています... – TonyB