通过指针获取输入的字符串

0x01

  通过指针获取输入的字符串:

  记得之前曾经这样写过:

  

  但是运行之后出现错误:

  

  别人说的是,指针没有初始化,是一个空指针。

0x02

  如果按照下图写,则不会发生错误:

         

0x03

  别人给的写法是:

  

  这样写也没错误!可以获取字符串,但是字符串长度不是任意的,取决于数组的长度;

0x04

  自己照葫芦画瓢的写法:

  

  这样也可以正确运行,获得字符串,长度还是任意的。

  需要注意的是,不能用【第七行】替换【第六行】;因为指针的值是一个地址,需要用取地址符&获取a的地址;

时间: 2024-10-20 17:33:44

通过指针获取输入的字符串的相关文章

python3 tkinter 获取输入字符串长度

python 3  获取输入字符长度 #-*- coding:utf-8 -*- from tkinter import * from tkinter import messagebox def get_Tk(): top = Tk() return top #定义获取字符长度函数 def sum_test(baseNum): return len(baseNum) def show_result(top,re_sum): #这里使用Toplevel(top) 是为了新开一个窗口 ,且显示计算结

关于指针 用字符数组,字符指针变量输入字符串 动态为字符型指针变量分配内存

#include <stdio.h> #include <iostream> #include<math.h> using namespace std; int main() { //声明字符型数组和指针变量 char str[10]; char *strip=str; //输入输出 cout<<"str="; cin>>str; //用字符数组输入字符串 cout<<"str="<<

string.Format出现异常&quot;输入的字符串格式有误&quot;的解决方法

string.Format出现异常"输入的字符串格式有误"的解决方法 今天在做项目时,碰到一个很奇怪的问题,我使用string.Format居然报“输入的字符串格式有误”的错误,我调了很久,还是不对,不明白错 在哪里,后来还是google了一下,原来我在字符串中出现了"{"字符.而"{"字符若出现在string.Format中是必需转义的,也就是要用两 个"{{"代表一个"{",同时双下面把我查找到的解决方

loadrunner获取毫秒及字符串替换实现

loadrunner获取毫秒及字符串替换实现 今天做一个性能测试,参数化要求创建用户名不可以重复,想来想不没有什么好的办法来避免用户名字的重复.所以就想用时间+随机数来实现,但是实现中遇到一个问题. 名字中不可以包含.这个特殊的字符的.所以要处理一下.字符串,于是就想一个C语言实现的字符串替换函数.loadrunner默认没有字符串替换函数,不知道为什么不做呢? (1)毫秒实现方法 通过创建date/time参数,设置格式为:%Y%m%d%H%M%S.000 (2)替换字符串函数 char *s

获取多个字符串中的共同字符

John 发现了很多种岩石.每种岩石都有一个独一无二成分:由小写英文字母组成.宝石是由一个单一的字符组成,并且将在所有岩石中出现.给出一些岩石的成分,输出有多少种不同的宝石存在. 输入: 第一行包含一个整数 N, 代表岩石的个数接下来的N行,每行包含岩石的构成,由小写的英文字母组成 输出: 输出有多少种不同的宝石 数据范围1 ≤ N ≤ 1001 ≤ 代表岩石组成的英文单词长度 ≤ 100 样例输入3abcddebaccdeeabg样例输出2样例解释只有"a", "b&quo

Swift3.0语言教程使用指针创建和初始化字符串

Swift3.0语言教程使用指针创建和初始化字符串 Swift3.0语言教程使用指针创建和初始化字符串苹果的Swift团队花了不少功夫来支持C的一些基础特性.C语言中为我们提供了指针,Swift也不例外,开发者可以使用指针去创建和初始化字符串. (1)在NSString中init(bytes:length:encoding:)方法可以从给定字符串按照指定获取方向,得到指定个数的字符,然后使用这些字符创建和初始化字符串.其语法形式如下: convenience init?(bytes: Unsaf

49.输入一字符串,检查是否回文 (回文是指正反序相同,如,LeveL)

(1) #include<iostream> using namespace std; int main() { int k=0; int j; char b[20]; cout<<"please input an number: "<<endl; cin>>b; for(j=0;j<20&&b[j]!='\0' ;j++); //字符串有一个结束符,判断它可知是否结束 { k=j; } for(int m=0;m&

C语言:指针实现输出梯形字符串

用指针实现,实现过程无需将子串复制到一个新的字符串中.(10分) 题目内容: 用指针实现,实现过程无需将子串复制到一个新的字符串中. 输入格式: 字符串 输出格式: 子串 输入样例: computer 输出样例: computer omputer mputer puter uter ter er r code #include "stdio.h" int main() { char s[30]; char * p =s; scanf("%s",p); int i;

Mybatis 学习---${ }与#{ }获取输入参数的区别、Foreach的用法

一.Mybatis中用#{}和${}获取输入参数的区别 1."#{}"和"${}"都可以从接口输入中的map对象或者pojo对象中获取输入的参数值.例如 1 <mapper namespace="com.hh.dao.UserDao"> 2 <select id="selectByIdList" resultType="com.hh.domain.SysUser"> 3 select