我有一个指针 ( *ascii ),它是一个指向 char 的指针,我希望它是一个 int 值,以便使其成为一个 if 语句,如
if ( ascii == 32 || ((ascii > 96) && (ascii < 123)) {
}
这是行不通的,我希望得到帮助
最佳答案
您的代码无法正常工作,因为您检查的是指针的值(内存地址),而不是所指对象的值。请记住,指针是一个地址,您必须取消引用它才能获取该地址的值。
取消引用后,您可以简单地将 char 类型与这些值进行比较:
char ascii_char = *ascii;
if ( ascii_char == 32 || ((ascii_char > 96) && (ascii_char < 123))
{
}
关于c - 如何在 c 中转换一个指向 int 的指针(以获取它的 ascii 值),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1777570/