Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Solidity-浆糊日记-msg.value-Ether Units (wei, finney, szabo, ether)

Solidity-浆糊日记-msg.value-Ether Units (wei, finney, szabo, ether)

原创
作者头像
rys
修改于 2020-12-10 09:56:06
修改于 2020-12-10 09:56:06
3.2K00
代码可运行
举报
文章被收录于专栏:问题解决问题解决
运行总次数:0
代码可运行

Q: 在刚开始用 remix 学solidity时一直很好奇这个VALUE是指什么?

A: 后面明白这个 VALUE是指的 msg.value, 部署合约和操作函数所需要的value

Q: 问题又有了,为什么指定了这个,msg (做操作的地址)就会将 token 转到 contract 的地址了,是调用了什么函数吗? [思考。。。。。。]

Note: msg.sender.transfer(amount) 这是指contract的账户向当前msg的账户转账。而且里面的值的单位是wei!!!

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pragma solidity ^0.4.21;

contract Money {
    
    event AddressBalanceShow(address current_address, uint256 current_account_address_balance,uint256 contract_account_balance);
    
    constructor() public payable {
       emit AddressBalanceShow(msg.sender, address(msg.sender).balance, address(this).balance);
    }
    
    function deposit() public payable {
        emit AddressBalanceShow(msg.sender, address(msg.sender).balance, address(this).balance);
    }
    
    function withdrawball(uint256 _value) public payable {
        msg.sender.transfer(_value);
        emit AddressBalanceShow(msg.sender, address(msg.sender).balance, address(this).balance);
    }
    
}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
判断监听系统网络状态
package com.asset.utils; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.text.SimpleDateFormat; import java.util.Date import javax.servlet.http.HttpSession; public class NetworkState implements Runna
麦克劳林
2018/09/11
7610
Java调用CMD命令
Windows下复制: copy C:\server\data\ccgavr\1.png C:\server\data\ccgavr\2.png Windows重命名: ren 1.png 3.png ren C:\server\data\ccgavr\1.png C:\server\data\ccgavr\3.png(DOS中提示命令语法不正确,powershell则可以)
JaneYork
2023/10/11
3910
Java调用CMD命令
java对文件的操作如下
package day20181122; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileWriter; import java.io.InputStreamReader; public class ReadTxt { private String fileName="s
热心的社会主义接班人
2018/12/14
4540
java Runtime.exec()执行shell/cmd命令:常见的几种陷阱与一种完善实现
我们项目要java执行命令“dmidecode -s system-uuid”获取结果,然而碰到问题,当项目一直执行好久后,Runtime.getRuntime().exec()获取结果为空,但也不报错,重启项目就又可以了,所以猜测属于陷阱2,并进行记录。
刘大猫
2024/11/17
8320
Java基础-26(02)总结网络编程
c:客户端键盘录入服务器控制台输出 package cn.itcast_08; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.Socket; /* * 客户端键盘录入,服务器输出到控制台 */ publi
Java帮帮
2018/03/16
8500
java执行cmd ping命令是什么_急求;java调用window的cmd的ping指令。。。。[通俗易懂]
public static void main(String[] args) throws IOException, InterruptedException {
全栈程序员站长
2022/09/27
1.3K0
java执行cmd ping命令是什么_急求;java调用window的cmd的ping指令。。。。[通俗易懂]
java javaTCP 多客户端C/S 应答
server package echo; import java.io.BufferedOutputStream; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintStream; import java.net.ServerSocket; import java.net.Socket; public class EchoServ
葫芦
2021/12/24
4540
打工人打工魂,打工的必会java调用python的几种用法(看这篇就够了)
创建maven工程,结构如下:到官网https://www.jython.org/download.html下载Jython的jar包或者在maven的pom.xml文件中加入如下代码:
用户7656790
2020/11/03
5.9K0
打工人打工魂,打工的必会java调用python的几种用法(看这篇就够了)
Java判断计算机网络连接是否正常
用户在登录系统时,出现网络断开,从而系统自动检测到网络状态。 /** * @author 麦克劳林 * @功能:持续检测网络是否连通 */ import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.text.SimpleDateFormat; import java.util.Date; publi
麦克劳林
2018/09/11
2.2K0
Java--Socket通信(双向)
该文介绍了如何利用Java实现基于TCP的客户端和服务器端通信。客户端和服务器端通过TCP进行通信,服务器端监听端口,客户端通过Socket连接到服务器端进行通信。具体实现包括创建Server和Client类,以及实现线程安全的ServerSocket类。客户端和服务器端的通信通过UTF-8编码。
I Teach You 我教你
2018/01/02
2.2K0
Java: SpringBoot 执行Shell/Bat脚本
通过Java启动Shell、Bat脚本,执行脚本命令,支持接收正常结果及异常结果。
Freedom123
2024/03/29
6130
Java.Utils:获取电脑配置信息
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/159024.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/14
4930
TCP与UCP协议,及socket编程
TCP是Tranfer Control Protocol的 简称,是一种面向连接的保证可靠传输的协议。通过TCP协议传输,得到的是一个顺序的无差错的数据流。发送方和接收方的成对的两个socket之间必须建 立连接,以便在TCP协议的基础上进行通信,当一个socket(通常都是server socket)等待建立连接时,另一个socket可以要求进行连接,一旦这两个socket连接起来,它们就可以进行双向数据传输,双方都可以进行发送 或接收操作。
全栈程序员站长
2022/06/30
6970
java执行curl命令带json(执行shell脚本命令)
需要注意的是,命令需要以数组的形式传递参数,就是把正常的命令以空格切分成数组就行了。而且参数前后不能有空格,不然会报错。
全栈程序员站长
2022/07/31
2.1K0
Java程序员的日常 —— 多进程开发IO阻塞问题
本篇仍旧是源于最近的工作,总结一下纪念那些年埋下的坑... 背景故事 需求:“使用进程方式启动另一个程序!” 开发:“OK! Runtime.getRuntime().exec("xxxx")” 需求:“启动以后能看到输出消息不!” 开发:“OK!” Process process = null; try { process = Runtime.getRuntime().exec("ipconfig /all"); } catch (IOException e) { e.printSt
用户1154259
2018/01/17
1.5K0
Java实现MySQL数据库备份(一)
下班了,利用闲暇时间总结一下如何使用Java语言实现MySQL数据库备份:
全栈程序员站长
2022/06/27
2.1K0
Listener 内存马
Servlet 规范中定义了 8 个监听器接口,其中最适合用来做内存马的是ServletRequestListener,它被用于监听 ServletRequest 对象的创建和销毁过程,在每次访问的时候都会被调用。
yulate
2023/05/02
4100
Listener 内存马
《Arthas系列2》三分钟理解Java如何使用命令行
今天学习一下Arthas是如何打印出当前机器上的所有Java线程的和调用控制台的,这个技术点不清楚,我们从Arthas的代码中找出实现,学习下知识点,在下次自己用的时候可以有思路,但是Arthas的代码量如此之多,在没人带的情况下怎么读代码呐?
香菜聊游戏
2021/05/26
6640
《Arthas系列2》三分钟理解Java如何使用命令行
java输入输出流实例代码
1.编写一个程序,读取源代码文件的内容并在控制台输出。如果源文件不存在,则显示相应的错误信息。
全栈程序员站长
2022/09/01
6610
Java网络编程多线程改进上传文件
Java网络编程多线程改进上传文件   服务器的代码用线程进行封装(多线程),这样可以模拟一个同时接收多人上传文件的服务器。   (用循环也可以但是效率低,是单线程的程序)
黑泽君
2018/10/11
7860
相关推荐
判断监听系统网络状态
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验