我如何使用 printk 打印函数 ioremap_nocache 返回的地址值?
void * ioremap_nocache (unsigned long phys_addr, unsigned long size);
http://mirror.linux.org.au/linux-mandocs/2.6.4-cset-20040312_2111/ioremap_nocache.html
我需要知道存储的虚拟地址的值以调试函数打开、读取和写入。
最佳答案
您可以同时使用 %lu
或 %p
来打印指针。他们有不同的表现
void *pointer = ioremap_nocache(phys_addr, size);
unsigned long cast = pointer;
printk("%lu - %p", cast, pointer); // '15294563 - 0x499602d2'
这也适用于 printf()
关于c - 如何打印void * ioremap_nocache()的返回值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17707051/