私はすべての理論の一部を読んでから離れてこの質問を行うことができないのです。文字列へのポインタの次 配列に格納された文字列を逆にするプログラムを書く :ここ関数を使用して、文字列へのポインタを効率的に実装するにはどうすればよいですか?
char *s[ ] = {
"To err is human...",
"But to really mess things up...",
"One needs to know C!!"
} ;
は私のコードは、宣言された配列
char *s[ ] = {
"To err is human...",
"But to really mess things up...",
"One needs to know C!!"
} ;
が配列である
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{ int i;
char *s[] = {
"To err is human...",
"But to really mess things up...",
"One needs to know C!!"
} ;
for(i=0;i<3;i++)
{
xstrrev(s[i]);
puts(s[i]);
}
return 0;
}
xstrrev(char *str)
{
char *temp[];
int len,j;
len=strlen(str);
for(j=0;j<(len)/2;j++)
{
*temp=*(str+len-j-1);
*(str+len-j-1)=*(str+j);
*(str+j)=*temp;
}
}
どうなりますか?何が起こりませんか?なぜあなたはその質問に答えることができないと思いますか?あなたの質問は「効果的に」何をしなければならないのですか? – Arkadiy
デバッグヘルプ(「なぜこのコードは動作しませんか?」)には、目的の動作、特定の問題またはエラー、および質問自体に再現するのに必要な最短コードが含まれている必要があります。明確な問題文がない質問は、他の読者にとって有用ではありません。参照:最小、完全、および検証可能な例を作成する方法。 – Olaf