これはワード検索を完了するための割り当ての一部です。私は、コマンドライン引数を使用して、所定の2D配列を検索する必要があります。私は、水平(左から右)、診断(左上から右下)、および垂直(上から下)のみを検索する必要があります。 ポインタの問題をよく理解すれば、DiagとVertを書きます。文字配列と2D配列ポインタの問題
私はこれはこれをやってから私を防ぎポインタの私の理解では、私は警告を取得しないと私は何をしないのですなぜ、次のif文
if (argv[count] == g[i][j]){
で起こる
warning: comparison between pointer and integer
を取得。
* gと(int star)gのさまざまなバリエーションを試してみましたが、警告よりも悪い結果が出ました。
ターンインのための警告フリーコードが必要です。
新しい人を助けてくれてありがとう。
#include <stdio.h>
#define ROW 3
#define COL 4
#define TRUE 1
#define FALSE 0
int checkHoriz(char *data, char *data2);
main(int argc, char *argv[]){
int count, i, j, rowValue, colValue;
char g[ROW][COL] = {{'a','b','c','d'},
{'d','c','b','a'},
{'x','y','z','d'}};
count=1;
if(argc>1){
for(i=0; i<ROW; i++){
for(j=0; j<COL; j++){
if (argv[count] == g[i][j]){
rowValue = i;
colValue = j;
if(checkHoriz(argv[count],g[i][j]) ==TRUE){
printf("%s appears horizontally starting @ g[%d]{%d]. \n", argv[count], i,j);
}
}
}
}
}else{
printf("No arguments were entered.\n");
}
}
int checkHoriz(char *data, char *data2){
int i = 0;
while (data == data2 && data!=' ' && data2 != '\0'){
data++;
data2++;
}
if(data2 == '\0'){
return 1;
}else{
return 0;
}
}
[このリンク](http://stackoverflow.com/posts/9552176/edit)から質問を編集できます。 – ruakh