unsigned と unsigned int の違いを理解しています。しかし、私の質問は少し異なります。
特定のメモリを ioremaping(linux) しており、そのメモリを読み取りたいと考えています。私は次のことをしました:
func()
{
unsigned int *p;
p = (unsigned int *)ioremap(ADDR,8*sizeof(unsigned int));
for (i = 0; i <= 7; i++)
pr_err("p[%d] = %d", i, p[i]);
}
これは完全に機能します。しかし、同じことを行い、(unsigned int *) の代わりに (unsidned *) を使用している標準コードが表示されます。つまり、 p は ですunsigned *p
。
func()
{
unsigned *p;
p = (unsigned *)ioremap(ADDR,8*sizeof(unsigned));
for (i = 0; i <= 7; i++)
pr_err("p[%d] = %d", i, p[i]);
}
それが良いプログラミング手法であるかどうかを知りたいです(プラットフォームに依存しないコード??)。はいの場合、その理由を教えてください。