A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© a124113798 中级黑马   /  2015-9-3 10:22  /  1154 人查看  /  16 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

请看下面一段代码
int main(){
   int a =10;
   char b =1;

   int *p = &b;
   printf("%d\n",*p);
   return 0;
}
请问结果是什么?为什么?

16 个回复

倒序浏览
char b = 1;  错误
1是整形  char是字符型
int *p = &b;
回复 使用道具 举报
字符型!整型!
回复 使用道具 举报
饭饭饭 发表于 2015-9-3 11:13
char b = 1;  错误
1是整形  char是字符型
int *p = &b;

1 也是ASCII码值。。。可以去查看ASCII码表。。。
回复 使用道具 举报

王鹏华,你这是刷分么。。。
回复 使用道具 举报
a124113798 发表于 2015-9-3 12:48
1 也是ASCII码值。。。可以去查看ASCII码表。。。

1的ascii码值是49  你去看ASCII码表
数字用整形int  字符型用char
你定义错误 结果也是错的
回复 使用道具 举报
饭饭饭 发表于 2015-9-3 17:22
1的ascii码值是49  你去看ASCII码表
数字用整形int  字符型用char
你定义错误 结果也是错的 ...

ASCII码值是1 的字符为SOH,刚去看了下。。。
实际就是char b =‘SOH’。
回复 使用道具 举报
a124113798 发表于 2015-9-3 18:08
ASCII码值是1 的字符为SOH,刚去看了下。。。
实际就是char b =‘SOH’。

你看的是 ASCII值为1  控制的字符是 SOH
然后ASCII值为49 控制的字符是 1
char b = 1; 这个 1 不是ASSCII值好么
回复 使用道具 举报
饭饭饭 发表于 2015-9-3 18:13
你看的是 ASCII值为1  控制的字符是 SOH
然后ASCII值为49 控制的字符是 1
char b = 1; 这个 1 不是ASSCI ...

#include <stdio.h>
int main(){
        char b =1;
        printf("%c\n",b);
        return 0;
}
你运行下。。。
回复 使用道具 举报
#include <stdio.h>
int main(){
        char b =49;
        printf("%c\n",b);
        return 0;
}
你运行下
回复 使用道具 举报
饭饭饭 发表于 2015-9-3 18:23
#include
int main(){
        char b =49;

所以啊,49可以是 ASCII值,为什么1不是呢。。。
这不是我的初衷,有点扯远了
回复 使用道具 举报
a124113798 发表于 2015-9-3 19:32
所以啊,49可以是 ASCII值,为什么1不是呢。。。
这不是我的初衷,有点扯远了 ...

1是ASSCII值  
你的代码错了  一个数字你给个char(字符型)类型
int b = 1;
int才是指向整型的 你别回复我了 你自己看看视频吧
回复 使用道具 举报
顶一下,就要学到指针了
回复 使用道具 举报
不建议你这么用,我们初学者要往对的方向去学,不要整这些没用的东西!没什么蛋用!
回复 使用道具 举报
顶一下,先预习~
回复 使用道具 举报
1wang2huan 发表于 2015-9-3 21:06
不建议你这么用,我们初学者要往对的方向去学,不要整这些没用的东西!没什么蛋用! ...

确实没什么用,有点偏了,只是想说明下指针类型为什么要跟指向的变量类型一致。。。
回复 使用道具 举报
1的ASCII码的值
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马