c语言-C语言scanf()语句的一个问题

问题描述

C语言scanf()语句的一个问题
C语言scanf()什么时候用&,什么时候又不用?为什么要用&,这样用的好处是什么?

解决方案

&的作用是取地址,对于简单变量,比如int float等就需要。字符数组、指针,本身就是指针了,就不需要。
不用取地址,函数内怎么把得到的结果再返回主程序呢?

解决方案二:
C语言中关于scanf()函数返回值问题
C语言scanf问题
C语言中scanf的问题

解决方案三:
&就是相当于地址的意思,你从键盘中输入数或赋值是要暂时存到一个地方栈,不加&,就相当于数没地存,好长时间没用过c了

解决方案四:
从键盘输入值的时候会用到&(取地址符)去存储数据,输出就不需要。当然指针就不用了。

时间: 2024-12-21 20:06:10

c语言-C语言scanf()语句的一个问题的相关文章

c语言先用scanf初始化了一个字符指针,之后再定义字符数组出现内存不可读,在线等,急求

问题描述 c语言先用scanf初始化了一个字符指针,之后再定义字符数组出现内存不可读,在线等,急求 #include #include int main() { char*s; scanf("%s",s); //printf("%sn",s); //int n = strlen(s); //printf("%dn",n); char ret[56]; return 0; } 解决方案 s只是指针变量,没有分配内存 char*s; s = mall

c语言scanf( )函数的一个问题

问题描述 c语言scanf( )函数的一个问题 #include int main() { int s; while(1) { printf("请输入:"); scanf("%d",&s); printf("%d ",s); } /*当给s从键盘接受字母的时候,该循环会出现不同, 原先(正常输入证书的时候)是等待你输入了s过后才 会输出结果,但现在(给s从键盘接受字母的时候)不 需要等待直接死循环下去. 我想请教各位长辈,这是什么原因导致

Java语言----三种循环语句的区别介绍_java

第一种:for循环 循环结构for语句的格式:      for(初始化表达式;条件表达式;循环后的操作表达式) { 循环体;   } eg: class Dome_For2{ public static void main(String[] args) { //System.out.println("Hello World!"); //求1-10的偶数的和 int sum = 0; for (int i = 1;i<=10 ; i++ ) { if (i%2 ==0) { //

c语言-C语言怎么通过操作语句来实现操作

问题描述 C语言怎么通过操作语句来实现操作 运行的时候,在dos框输入语句然后实现相应功能..比如我输入addstudent 11这么一个语句就是添加了一个学号为11号的学生,再比如输入deletestudent 12就是删除学号为12的学生等等 解决方案 你要根据输入内容解析出各个部分,然后写一个逻辑去根据解析后的内容去做不同的事 解决方案二: main函数中的args接收参数,进行判断,作相应的操作. 仔细看看c语言的main()的具体使用例子.教材上一般会有的. 解决方案三: 看可不可以写

c语言-【C语言】用scanf赋值给带指针的字符串

问题描述 [C语言]用scanf赋值给带指针的字符串 我希望是输入几个单词之后,这几个单词成为一个字符串,但是变异之后仍然有问题. #include<stdio.h> #include<stdlib.h> #include<string.h> int main(int argc, char *argv[]) { int n; printf("Number of words: "); scanf("%d", &n); con

让你提前认识软件开发(20):如何在C语言里面执行SQL语句?

第1部分 重新认识C语言 如何在C语言里面执行SQL语句? [文章摘要]         在通信类软件中,程序经常需要与数据库打交道.为了实现诸如从数据库中获取数据.更新数据库表某字段.插入或删除某条数据等功能,就需要在C语言程序中构造一些SQL语句,并用函数来执行这些SQL语句.         本文介绍如何在C语言程序中构造并执行SQL语句,为相关软件开发工作的开展提供了参考. [关键词]          SQL语句  C语言  程序  流程  开发   一.为什么要在C语言程序中执行SQ

.net-C#调用C语言程序遇到scanf

问题描述 C#调用C语言程序遇到scanf 怎么才能让程序自动输入一个值,并且得到返回的结果呢? Process.start之后然后该做什么啊? 解决方案 Process有一个等待结束的方法可以调用. 请查看MSDN的说明. http://msdn.microsoft.com/zh-cn/library/system.diagnostics.process_methods(v=vs.110).aspx 自己找根鱼竿,不要等着喂鱼.

C语言中嵌入式SQL语句

原文:[转载]C语言中嵌入式SQL语句 http://blog.csdn.net/cnlht/archive/2007/12/12/1930960.aspx原文地址 实验内容: 掌握SQL Server 2000的预编译程序NSQLPREP.EXE的使用(以课本例题1进行调试): 实验步骤: 一.数据库环境配置 1.创建xuesheng数据库,建立student表等: 2.关闭sql server 2000服务管理器: 3.将devtools文件夹拷贝到:C:\Program Files\Mic

c语言 c++-c语言求大神解答,一个数组的基础问题

问题描述 c语言求大神解答,一个数组的基础问题 数组的地址是什么?是不是就是数组名,也就是第一个元素的地址,也就是这个数组的首地址? 解决方案 数组名可以当成指向数组首元素的地址使用. 例如:int a[10]; 可以通过: cout<<*a<<endl; //来输出数组a中的第一个元素. cout<<*(a + i)<<endl; //来输出数组中的第i个元素. 下面两个输出的地址值也是相同的. printf("--->%pn",