引数の渡し方

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

引数の渡し方

#1

投稿記事 by パパラッチ » 14年前

分からないことがあるのでこの掲示板を使わせていただきます

DXライブラリを使っているのですが
画像の読み込み関数と描画関数を分ける場合、
大量の画像ハンドルを読み込み関数から描画関数へ送る必要があると思うんです
staticを使って同じモジュールにつっこめばいいかと思ったのですが・・

引数をつかって配列や構造体を渡す方法があるか伺いたいのです
また今回の問題で間違っていることをぬかしていたら教えてください

box
記事: 2002
登録日時: 15年前

Re: 引数の渡し方

#2

投稿記事 by box » 14年前

パパラッチ さんが書きました: 引数をつかって配列や構造体を渡す方法があるか伺いたいのです
あります。ていうか、そういうプログラムを今までに書いたことがないのでしょうか?
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

パパラッチ

Re: 引数の渡し方

#3

投稿記事 by パパラッチ » 14年前

あるのであれば教えていただけないでしょうか
自分で探しても分からなかったもんで・・・

引数を使ったプログラムは書いたことはありますが配列や構造体を渡したことはないです

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: 引数の渡し方

#4

投稿記事 by softya(ソフト屋) » 14年前

実のところポインタの知識が重要になります。

「C言語ポインタと構造体を理解する」
http://chaichan.lolipop.jp/src/c.htm

まず、こちらを読んでみてください。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

パパラッチ

Re: 引数の渡し方

#5

投稿記事 by パパラッチ » 14年前

ありがとうございます
提示されたサイト+さっき検索したサイトで解決できたと思います

タイトルと全く違った問題なのですが
配列へ代入するときに[0]をとばして[1]から代入したいのですが良い手はありますか

box
記事: 2002
登録日時: 15年前

Re: 引数の渡し方

#6

投稿記事 by box » 14年前

パパラッチ さんが書きました: 自分で探しても分からなかったもんで・・・
入門書で「配列」や「構造体」を説明している箇所にきっと書いてあるレベルの話だと思います。

ネットでも、
「C 配列 引数」

「C 構造体 引数」
あたりでググれば、いくらでも見つかります。記述内容が正しいかどうかは別として。
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: 引数の渡し方

#7

投稿記事 by softya(ソフト屋) » 14年前

パパラッチ さんが書きました:配列へ代入するときに[0]をとばして[1]から代入したいのですが良い手はありますか
どの様な代入の話か良く分かりません。
添字の話であればfor( i=1;で始めれば良いと思いますが、そういう話では無いんでしょうね。

簡単で良いのでサンプルを書いてみてもらえますか。
ソースコードはcodeタグをお使いください。詳しくはフォーラムルールを。
http://dixq.net/board/board.html
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

パパラッチ

Re: 引数の渡し方

#8

投稿記事 by パパラッチ » 14年前

boxさん、すいません 実際に探してみたら一件みつけました 
これからは探してから質問します
softya(ソフト屋) さんが書きました:添字の話であればfor( i=1;で始めれば良いと思いますが、そういう話では無いんでしょうね。
う・・・添字の話です・・・
forでやるのがいいのでしょうね・・・
もっと記号一発でぱぱっとという感じのがあるかな~と妄想していたのですが
forで留めておきます
回答ありがとうございました

アバター
Dixq (管理人)
管理人
記事: 1662
登録日時: 15年前
住所: 北海道札幌市
連絡を取る:

Re: 引数の渡し方

#9

投稿記事 by Dixq (管理人) » 14年前

> boxさん、すいません 実際に探してみたら一件みつけました

本当にそんなに少なかったですか?
boxさんが言っている検索結果ですが、上から下まで全て配列の引数の話になっていると思います。
http://www.google.co.jp/search?sourceid ... 97&qscrl=1

> もっと記号一発でぱぱっとという感じのがあるかな~と妄想していたのですが

何がしたいのか、具体的に言ってもらわないと良く分かりませんが、
特定のバイト数要素をコピーするなら、memcpy関数等を使えば一行でかけるかと思います。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: 引数の渡し方

#10

投稿記事 by softya(ソフト屋) » 14年前

Dixq (管理人) さんが書きました:何がしたいのか、具体的に言ってもらわないと良く分かりませんが、
特定のバイト数要素をコピーするなら、memcpy関数等を使えば一行でかけるかと思います。
構造体配列の場合はちゃんとアライメントとか理解してやらないと危険なのでmemcpyは避けたほうが良いかと思いますよ。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アバター
Dixq (管理人)
管理人
記事: 1662
登録日時: 15年前
住所: 北海道札幌市
連絡を取る:

Re: 引数の渡し方

#11

投稿記事 by Dixq (管理人) » 14年前

「配列」や「構造体」ということだったので、私としては別々だと思っていました。
そして、配列の要素[1]からコピーする方法をということでしたので「特定のバイト数要素をコピーするなら」として、前者に限定したつもりではありましたが、分かりにくかったですね。

ISLe
記事: 2650
登録日時: 15年前
連絡を取る:

Re: 引数の渡し方

#12

投稿記事 by ISLe » 14年前

構造体配列にmemcpyを使うと何か問題がありましたっけ。
PODでシャローコピーという前提はありますけど。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: 引数の渡し方

#13

投稿記事 by softya(ソフト屋) » 14年前

sizeofをちゃんと使いこなしていればOKだと思いますが、サイズ決め打ちなら危険だと思います。
あとクラスを使っていないとか前提が必要ですよね。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

閉鎖

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