- /*
- 1.功能:输入一个8位字符串然后再输出到屏幕上;
- 2:如果输入的不是8位则提醒输入8位字符串。
- */
- #include <stdio.h>
- int main()
- {
- char a[9]; //定义一个8位字符型数组 <--- 定义8个字节的空间来存输入的内容, 没有'\0'的位置, 所以下面打印会发生错误
- // char a[9]; <--- 改成9 就能通
- int count = 0; //定义count记录输入字符串的字符个数
- do {
- printf("请输入一个8位字符串:\n"); //提示用户输入
- scanf("%s", a); //接收用户输入
- while (a[count] != '\0') //判断数组元素个数
- {
- count++;
- printf("%d\n",a[count]);
- }
- } while (count != 8);
- printf("您输入的是:%s\n", a); //输出字符串 <--- 没有结束符'\0'的字符串, 系统会一直往下找'\0',角标越界错误
- //=== 分割线 ====================================
- char c[] = "helloworld"; // <---10个字符串
- printf("%zi\n",sizeof(c));// <---系统分配 11个字节空间来存储.
- return 0;
- }
复制代码 |