首页
技术博客
PHP教程
数据库技术
前端开发
HTML5
Nginx
php论坛
新用户注册
|
会员登录
PHP教程
技术博客
编程问答
PNG素材
编程语言
前端技术
Android
PHP教程
HTML5教程
数据库
Linux技术
Nginx技术
PHP安全
WebSerer
职场攻略
JavaScript
开放平台
业界资讯
大话程序猿
登录
极速注册
取消
热门标签 | HotTags
regex
cmd
get
case
import
header
less
lua
frameworks
php
buffer
search
php7
usb
express
config
replace
list
request
post
javascript
jar
nodejs
yaml
chat
scala
require
timezone
hashset
perl
uml
instance
cSharp
bytecode
export
fetch
controller
command
hook
php8
php5
function
format
timestamp
md5
byte
merge
shell
iostream
node.js
grid
substring
object
select
heap
dagger
golang
datetime
process
dll
input
foreach
ascii
plugins
client
cookie
text
web3
cpython
schema
copy
runtime
python
char
cPlusPlus
python3
typescript
audio
vba
当前位置:
开发笔记
>
编程语言
> 正文
printf的前后问题
作者:tianziqizhi | 来源:互联网 | 2023-10-16 13:33
我举个例子,C代码如下:#include<stdio.h>main(){charx;printf(本程序功能:任意输入一个字符,如果是字母字符,将其ASCII
我举个例子,C代码如下:
#include
main()
{
char x;
printf("本程序功能:任意输入一个字符,如果是字母字符,将其ASCII码值加5,使其在字母字符“a-z”之间变换并输出。例如字母“a”变成“f”,字母“z”变成“e”;");
printf("如果是数字字符,则将其ASCII码值减2,使其在数值“0-9”之间变换并输出。例如字符“9”变成字符“7”,字符“1”变成字符“9”。\n\n\n");
printf("请任意输入一个数字或字母字符:");
scanf("%c",&x);
if(x>='a'&&x<='z')
{
if(x>'u')
{
x=x-21;
printf("%c\n",x);
}
else
printf("%c\n",x+5);
}
else
if(x>='0'&&x<='9')
{
if(x<'2')
{
x=x+8;
printf("%c\n",x);
}
else
printf("%c\n",x-2);
}
}
你看红色部分两条说明这个程序功能的printf语句,像上面那样没错,可以运行。但是如果我把那两条printf语句放到char x;语句之前,也就是放在程序的一开始,那么这个程序就不对了,会报错,而且错误还不少,报的错都是有关于x的。
我想问的是问什么不能把这个printf语句放在最前面,而非要放在声明x之后???
10 个解决方案
#1
再补充一下,我用的是vc++2008速成版编写的。
#2
难道你的C标准还是很老的,只能接受把 变量定义在程序开头处。
#3
编译器的问题。
变量先要进行声明。
#4
确实是编译器的问题
#5
先定义变量了。
#6
我用的是vc++2008速成版,难道它里面的C编译器不行。
我在改文件属性时,改成编译为C代码,后面还有个括号标注了TC,难道他用的是TC编译器?
#7
C要求变量申明应该在{}中的所有执行语句的前面
C++可以随用随定义
#8
呵呵,微软的编译器对于*.C文件始终不支持随处定义变量的特性,必须在函数体最上面定义。
我倒觉得这是个比较好的编程习惯,这个函数会用到哪些变量一目了然。
不足就是,就算只想在循环中使用变量i,也不能用for(int i=0; i<10; i++){}
#9
引用 2 楼 wesleyluo 的回复:
难道你的C标准还是很老的,只能接受把 变量定义在程序开头处。
难道现在的C标准已经改了?
#10
引用 9 楼 nbda1121440 的回复:
引用 2 楼 wesleyluo 的回复:
难道你的C标准还是很老的,只能接受把 变量定义在程序开头处。
难道现在的C标准已经改了?
看看C99标准。
int
include
io
main
char
ascii
编译
文件
编程
写下你的评论吧 !
吐个槽吧,看都看了
会员登录
|
用户注册
推荐阅读
list
UNP 第9章:主机名与地址转换
本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ...
[详细]
蜡笔小新 2024-12-27 11:26:39
perl
网络链路质量监控:Smokeping部署与配置
本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ...
[详细]
蜡笔小新 2024-12-27 19:31:05
list
从 .NET 转 Java 的自学之路:IO 流基础篇
本文详细介绍了 Java 中的 IO 流,包括字节流和字符流的基本概念及其操作方式。探讨了如何处理不同类型的文件数据,并结合编码机制确保字符数据的正确读写。同时,文中还涵盖了装饰设计模式的应用,以及多种常见的 IO 操作实例。 ...
[详细]
蜡笔小新 2024-12-26 17:37:25
get
深入理解KMP算法中的next数组:北大OJ 2406题解
本文详细探讨了KMP算法中next数组的构建及其应用,重点分析了未改良和改良后的next数组在字符串匹配中的作用。通过具体实例和代码实现,帮助读者更好地理解KMP算法的核心原理。 ...
[详细]
蜡笔小新 2024-12-28 11:30:01
replace
编写有趣的VBScript恶作剧脚本
本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ...
[详细]
蜡笔小新 2024-12-28 09:46:23
import
使用Objective-C和dispatch库实现并发素数计算
本文介绍如何使用Objective-C结合dispatch库进行并发编程,以提高素数计数任务的效率。通过对比纯C代码与引入并发机制后的代码,展示dispatch库的强大功能。 ...
[详细]
蜡笔小新 2024-12-28 08:44:35
config
CentOS7源码编译安装MySQL5.6
2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ...
[详细]
蜡笔小新 2024-12-27 17:49:56
php
深入理解 SQL 视图、存储过程与事务
本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ...
[详细]
蜡笔小新 2024-12-27 17:40:42
config
Dockerfile 编写与 Docker 网络配置详解
本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ...
[详细]
蜡笔小新 2024-12-27 17:31:41
list
数据库内核开发入门 | 搭建研发环境的初步指南
本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ...
[详细]
蜡笔小新 2024-12-27 16:38:48
replace
Java面试题解析
本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ...
[详细]
蜡笔小新 2024-12-27 13:55:14
list
深入理解Python的os和sys模块
本文详细解析了Python中的os和sys模块,介绍了它们的功能、常用方法及其在实际编程中的应用。 ...
[详细]
蜡笔小新 2024-12-26 22:04:19
import
Objective-C 编程中的关键语法点
本文探讨了 Objective-C 中的一些重要语法特性,包括 goto 语句、块(block)的使用、访问修饰符以及属性管理等。通过实例代码和详细解释,帮助开发者更好地理解和应用这些特性。 ...
[详细]
蜡笔小新 2024-12-26 19:42:38
list
2023年京东Android面试真题解析与经验分享
本文由一位拥有6年Android开发经验的工程师撰写,详细解析了京东面试中常见的技术问题。涵盖引用传递、Handler机制、ListView优化、多线程控制及ANR处理等核心知识点。 ...
[详细]
蜡笔小新 2024-12-26 17:45:48
list
C++ 中的数组与动态数组初始化
本文探讨了 C++ 中普通数组和标准库类型 vector 的初始化方法。普通数组具有固定长度,而 vector 是一种可扩展的容器,允许动态调整大小。文章详细介绍了不同初始化方式及其应用场景,并提供了代码示例以加深理解。 ...
[详细]
蜡笔小新 2024-12-26 15:38:03
tianziqizhi
这个家伙很懒,什么也没留下!
Tags | 热门标签
regex
cmd
get
case
import
header
less
lua
frameworks
php
buffer
search
php7
usb
express
config
replace
list
request
post
javascript
jar
nodejs
yaml
chat
scala
require
timezone
hashset
perl
RankList | 热门文章
1
CentOS下使用URLOS快速部署DzzOffice企业办公套件
2
2:第一章:认识JVM规范1:JVM简介;
3
HBase介绍workhardworksmart
4
PBOC3.0中使用的国密SM2算法
5
c语言malloc碎片清除,测试发现malloc申请空间超过60字节,free之后,内存的内容不会清除,,这是为什么...
6
Win10操作系统安装配置,这一篇文章就够了!
7
python3.6.5如何运行
8
海量数据分类 liblinear使用总结
9
android 中 TextView.setText(CharSequence text, BufferType type)的了解
10
Win10系统屏蔽商店广告的方法
11
Windows里清除访问网上邻居中已记住的密码
12
adworldhandcraftedpyc
13
正版游戏知识小科普:GTA5如何设置中文
14
Confluence安装与破解
15
小李飞刀:飞呀飞呀python的骄傲放纵
PHP1.CN | 中国最专业的PHP中文社区 |
DevBox开发工具箱
|
json解析格式化
|
PHP资讯
|
PHP教程
|
数据库技术
|
服务器技术
|
前端开发技术
|
PHP框架
|
开发工具
|
在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved |
京公网安备 11010802041100号
|
京ICP备19059560号-4
| PHP1.CN 第一PHP社区 版权所有