配列にポインタのアドレスをいれれるかどうか?

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
ファファファファウスト

配列にポインタのアドレスをいれれるかどうか?

#1

投稿記事 by ファファファファウスト » 15年前

タイトル通りです。

d[0] = &point

みたいなことはできるんでしょうか?


ファファファファウスト

Re:配列にポインタのアドレスをいれれるかどうか?

#3

投稿記事 by ファファファファウスト » 15年前

やったんですが・・・
移植性のないポインタ変換
と警告がでまして・・・

バグ

Re:配列にポインタのアドレスをいれれるかどうか?

#4

投稿記事 by バグ » 15年前

多分、型が違うんじゃないかと…

int a[5] = {0, 1, 2, 3, 4};
int *p[5] = {&a[0], &a[1], &a[2], &a[3], &a[4]};

これならどうですか?

バグ

Re:配列にポインタのアドレスをいれれるかどうか?

#5

投稿記事 by バグ » 15年前

あ、失礼、ポインタのアドレスですね。

int* point;
int** d[3];
d[0] = &point;

こうですかね。

box

Re:配列にポインタのアドレスをいれれるかどうか?

#6

投稿記事 by box » 15年前

> 移植性のないポインタ変換
> と警告がでまして・・・

そのときのソースコードは?

ファファファファウスト

Re:配列にポインタのアドレスをいれれるかどうか?

#7

投稿記事 by ファファファファウスト » 15年前

まずはソース上げますね
void asc(int *point,int size)
{
int i,j;
int f[65535],s[65535],p[65535];
unsigned d[10000];
d[0] = &point;
これは型変換しつつデータを配列にいれようとしてかきました

バグさんありがとうございます!!試してみます!!

box

Re:配列にポインタのアドレスをいれれるかどうか?

#8

投稿記事 by box » 15年前

> void asc(int *point,int size)
> 	unsigned d[10000];		
> 	d[0] = &point;

これだと、バグさんの回答とは話が違ってきます。
こういうことが起きるから、「質問するときにソースを見せて」となるわけです。

pointが指している領域の先頭要素をd[0]に格納したければ、

d[0] = point[0];

です。

ファファファファウスト

Re:配列にポインタのアドレスをいれれるかどうか?

#9

投稿記事 by ファファファファウスト » 15年前

申し訳ないです・・・・・以後気をつけます

できました!!!ありがとうございます!!

閉鎖

“C言語何でも質問掲示板” へ戻る