小编Haf*_*uri的帖子

如何检查变量是否已在C中初始化?

有没有办法检查变量是否已在C中初始化?

考虑以下示例,

int main(){
    int a = 3, b = 7, c;

    if ( a > b )
        c = a-b;

    // Now, how can I check if the variable "c" has some value or not
    // I don't want check like this,
    // if ( isalpha(c) ) or if ( isdigit(c) )
    // or anything similar to like that
}
Run Code Online (Sandbox Code Playgroud)

换句话说,不C有像一些功能definedPerl.在Perl,我可以简单地做if (defined c),这将检查变量是否被定义,并且它在上面的示例中返回False.如何在C中实现相同的目标?

c

35
推荐指数
3
解决办法
2万
查看次数

如何使用 Create React App 和 TypeScript 启用可选链

当前未启用对实验性语法“optionalChaining”的支持

我收到了上述错误。我关注了这篇文章并添加"@babel/plugin-proposal-optional-chaining": "^7.7.4"到我的devDependencies.

然后我收到这个错误,

将 @babel/plugin-proposal-optional-chaining ( https://git.io/vb4Sk ) 添加到 Babel 配置的“插件”部分以启用转换。

所以我按照这篇文章并将.babelrc文件添加到我的项目根目录中

{
    "presets": ["react", "es2015","stage-1"],
    "plugins": ["transform-runtime", "transform-optional-chaining"]
}
Run Code Online (Sandbox Code Playgroud)

这似乎没有做任何事情。我也听到有人提到Create React App不允许你修改 babel 的配置。所以我的问题是如何在不重新布线情况下启用可选链接CRA

PS我正在使用"typescript": "^3.7.2",或者至少我是这么package.json说的。我试图npm install确保它已更新。不确定是否CRA在下面做一些奇怪的事情并TypeScript以某种方式使用旧版本。


编辑: 当我用 开始项目时CRA,我相信我们正在使用TypeScript: 3.6.x. 我想使用Optional Chaining,所以我将package.json文件更改为"typescript": "^3.7.2"then npm install。我认为问题是,TypeScript知道我正在使用 …

typescript babeljs create-react-app

21
推荐指数
3
解决办法
2万
查看次数

VSCode 扩展修复 Python 不一致的 tab 问题

首先,我想知道谁是决定使用基于缩进的语言的无脑天才,为什么他不能简单地使用分号。令人沮丧的是,python 文件中的选项卡总是不同步,特别是当您更改编辑器和/或操作系统时。

只是想知道 VSCode 中是否有可以修复此选项卡不一致的扩展?

python visual-studio-code

20
推荐指数
5
解决办法
2万
查看次数

JSX元素类型'void'不是JSX元素的构造函数

我在这做错了什么?

它不喜欢我称之为的方式 Items

import React, { Component } from 'react';
import { Link } from "react-router-dom";

interface LinkedItemProps {
    icon: string;
    title: string;
}

export const Items = ({icon, title}: LinkedItemProps) => {
    <div>
        <div className="nav-menu-link-icon">
            {icon}
        </div>
        <div className="nav-menu-link-label">
            {title}
        </div>
    </div>
}

export default class LinkedItems extends React.Component<any, any> {
    render() {
        return (
            <Link
                to={this.props.link}
                title={this.props.title}
                onClick={this.props.afterClick}
            >
                <Items icon={this.props.icon} title={this.props.tilte} /> //error
            </Link>
    )}
}
Run Code Online (Sandbox Code Playgroud)

PS谢谢Shubham Khatri将此标记为重复,其中一个问题与我提出的问题不太相似.

javascript reactjs

18
推荐指数
1
解决办法
6648
查看次数

ReactJS中的浏览器检测

有没有办法检测IE浏览器与React并重定向到页面或提供任何有用的消息.我在JavaScript中找到了一些东西,但不确定如何将它与React + TypeScript一起使用.

var isEdge = !isIE && !!window.StyleMedia;

javascript typescript reactjs

12
推荐指数
3
解决办法
2万
查看次数

Ajax没有设置标题 - 与TS反应

我正在使用React With Redux,我编写了一个中间件,当我在Epics中进行Ajax调用时,它会派上用场.例如,要做一个GET请求,我有这个getJSON功能.

import {ajax, AjaxResponse} from "rxjs/ajax";

const getJSON = (url: string, headers?: Object): Observable<AjaxResponse> =>
    ajax({
        method: "GET",
        url,
        responseType: "json",
        headers,
        withCredentials: true
    });
Run Code Online (Sandbox Code Playgroud)

一切似乎工作正常,除了Ajax没有设置包含访问令牌的标头.

当我单步执行代码时,headers对象看起来像这样,

{
    Authorization: "Bearer ey-SOME-ACCESS-TOKEN"
}
Run Code Online (Sandbox Code Playgroud)

正如所料......但是当我查看网络调用时,它不包含带有其值的指定标头.

解析:

Accept: */*
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Access-Control-Request-Headers: authorization
Access-Control-Request-Method: GET
Connection: keep-alive
Host: localhost:1337
Origin: http://localhost:3000
Run Code Online (Sandbox Code Playgroud)

资源:

OPTIONS /api/test HTTP/1.1
Host: localhost:1337
Connection: keep-alive
Access-Control-Request-Method: GET
Origin: http://localhost:3000
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; …
Run Code Online (Sandbox Code Playgroud)

ajax typescript reactjs

8
推荐指数
1
解决办法
430
查看次数

如何使用表面上的“显示”div 显示隐藏在彩色 div 后面的动画

想象一下,我们有两层背景。

  • 底层是绿色的<div class="green"></div>。为简单起见,我们假设它只是一种颜色。但是在我的项目中,这一层包含一个css animation

  • 在它上面还有另一层蓝色<div class="blue"></div>

  • 现在,我想div在两者之上添加另一个,它显示绿色背景(我项目中的动画层)。

我能想到的最接近的例子是,如果你想象一个聚光灯。一切看起来都是黑色的,聚光灯四处移动并显露出背景。

基本上,这就是我所拥有的:

<div class="green">
    <div class="blue">
        <div class="reveal"></div>
    </div>
</div> 
Run Code Online (Sandbox Code Playgroud)

它看起来像这样。请记住,绿色层是我项目中的动画。

在此处输入图片说明

问题:我怎样才能完成.reveal样式来实现上述行为。

  • 第一个 div - 绘制.green背景(动画)
  • 第二个 dv -.blue在它上面绘制背景
  • 第三/第四/... divs - 位于两者之上,但它揭示了背景First div绘制的任何内容

注意:100%可用宽度和高度的第一个和第二个 div 覆盖。

.green {
    background-color: #159c82;
    width: 100vw;
    height: 100vh;
}

.blue {
    background-color: #1b4287;
    // I could change this to a sibling div and use,
    // position: absolute; …
Run Code Online (Sandbox Code Playgroud)

html css

8
推荐指数
1
解决办法
362
查看次数

使用scanf读取字符串作为输入

我是C语言的新手,我正在尝试从用户那里读取一个字符和一个字符串(一个句子;最大长度为25).

不知道我在下面的代码行中做错了什么,它给了我一个错误"Segment Fault".

#include <stdio.h>

int main(){
    char * str[25];
    char car;

    printf("Enter a character: ");
    car = getchar();

    printf("Enter a sentence: ");
    scanf("%[^\n]s", &str);

    printf("\nThe sentence is %s, and the character is %s\n", str, car);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

谢谢!

c scanf

7
推荐指数
2
解决办法
5万
查看次数

每次合并到 master 时触发 webhook - GitHub Webhooks

我不确定这到底是如何工作的,但我希望运行一个 bash 脚本,每次通过Github. 是否有可以在 PR 合并时触发的 GitHub webhook?另外,我不确定如何通过此网络钩子更新 master?或任何其他建议如何做到这一点?我不知道我是否朝着正确的方向前进。

通过updating master,我的意思是,拉一切从主。运行一个 bash 脚本,该脚本几乎没有更改并将新更改推送回 master。

github githooks github-api

7
推荐指数
1
解决办法
5149
查看次数

找不到名字“FB”[ts]

我正在尝试初始化 JavaScript SDK 以最终使用 Facebook Graph API。但是一直这么说Cannot find name FB,不知道为什么。这是我所做的,

componentDidMount() {
    (window as any).fbAsyncInit = function() {
        FB.init({ // this FB errors out
            appId            : "my-app-id",
            autoLogAppEvents : true,
            xfbml            : true,
            version          : "v2.11"
        });
    };

    (function(d: any, s: any, id: any) {
    var js, fjs = d.getElementsByTagName(s)[0];
    if (d.getElementById(id)) {return; }
    js = d.createElement(s); js.id = id;
    js.src = "https://connect.facebook.net/en_US/sdk.js";
    fjs.parentNode.insertBefore(js, fjs);
    }(document, "script", "facebook-jssdk"));
}
Run Code Online (Sandbox Code Playgroud)

PS我正在使用TSLint,这就是为什么我拥有所有这些typedef any

facebook-graph-api react-tsx

6
推荐指数
1
解决办法
2156
查看次数