可以吗?

lucyke 2003-06-01 10:27:38
把数字作为字符看待,初始化字符数组,

const char key[]={4,9,6,2,8,7,3};
const char key[]={'4','9','6','2','8','7','3','\0'};

请问有什么区别吗?第一个对吗?


...全文
21 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xumiao001982 2003-06-01
  • 打赏
  • 举报
回复
在字符数组中字符是以ASCII码保存的,所以存入了字符'1'其实是'1'的字符的ascii码
向字符数组中存储数字,就直接把数字存在里面
pzytony 2003-06-01
  • 打赏
  • 举报
回复
#include<stdio.h>
#include<stdlib.h>

void main()
{
const char key1[]={'4','9','6','2','8','7','3','\0'};
const char key2[]={4,9,6,2,8,7,3};
FILE *p;
p=fopen("w.txt","w");
fputs(key1,p);
fprintf(p,"\n");
fputs(key2,p);
}

w.txt 文件中的内容如下:
4962873
乱码?962873
pzytony 2003-06-01
  • 打赏
  • 举报
回复

区别很大
第一行 4,9,6,2,8,7,3 指的是ASCII码值。查一ASCII表
第二行 才是真正的字符 4,9,6,2,8,7,3

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧