Why I cannot use VLA when writing C codes in Visual Studio 2017?
Just some really simple codes, as shown below.
int row = 4;
int column = 5;
int val_arr[row][column];
Could you please help me solve this problem? Thanks very much!
c visual-studio c99
|
show 15 more comments
Just some really simple codes, as shown below.
int row = 4;
int column = 5;
int val_arr[row][column];
Could you please help me solve this problem? Thanks very much!
c visual-studio c99
1
Microsoft don't have a truly conforming C compiler. Specifically, no C99 compiler. You are limited to to C89 features with MS.
– StoryTeller
Nov 25 '18 at 8:29
3
AFAIK, VLAs are optional after C99. In any case, using VLAs is, IMHO, not a good habit. Almost as bad as alloca().
– GermanNerd
Nov 25 '18 at 8:34
1
@SouravGhosh - Well.. MS supports alloca. So I daresay that particular utility fares better than VLA's in that regard.
– StoryTeller
Nov 25 '18 at 9:16
3
Those concerns apply to any use of the stack, not just VLAs
– M.M
Nov 25 '18 at 9:53
3
Also it is useful to be able to use variably-modified type for dynamic allocation
– M.M
Nov 25 '18 at 10:02
|
show 15 more comments
Just some really simple codes, as shown below.
int row = 4;
int column = 5;
int val_arr[row][column];
Could you please help me solve this problem? Thanks very much!
c visual-studio c99
Just some really simple codes, as shown below.
int row = 4;
int column = 5;
int val_arr[row][column];
Could you please help me solve this problem? Thanks very much!
c visual-studio c99
c visual-studio c99
asked Nov 25 '18 at 8:24
user10298899
1
Microsoft don't have a truly conforming C compiler. Specifically, no C99 compiler. You are limited to to C89 features with MS.
– StoryTeller
Nov 25 '18 at 8:29
3
AFAIK, VLAs are optional after C99. In any case, using VLAs is, IMHO, not a good habit. Almost as bad as alloca().
– GermanNerd
Nov 25 '18 at 8:34
1
@SouravGhosh - Well.. MS supports alloca. So I daresay that particular utility fares better than VLA's in that regard.
– StoryTeller
Nov 25 '18 at 9:16
3
Those concerns apply to any use of the stack, not just VLAs
– M.M
Nov 25 '18 at 9:53
3
Also it is useful to be able to use variably-modified type for dynamic allocation
– M.M
Nov 25 '18 at 10:02
|
show 15 more comments
1
Microsoft don't have a truly conforming C compiler. Specifically, no C99 compiler. You are limited to to C89 features with MS.
– StoryTeller
Nov 25 '18 at 8:29
3
AFAIK, VLAs are optional after C99. In any case, using VLAs is, IMHO, not a good habit. Almost as bad as alloca().
– GermanNerd
Nov 25 '18 at 8:34
1
@SouravGhosh - Well.. MS supports alloca. So I daresay that particular utility fares better than VLA's in that regard.
– StoryTeller
Nov 25 '18 at 9:16
3
Those concerns apply to any use of the stack, not just VLAs
– M.M
Nov 25 '18 at 9:53
3
Also it is useful to be able to use variably-modified type for dynamic allocation
– M.M
Nov 25 '18 at 10:02
1
1
Microsoft don't have a truly conforming C compiler. Specifically, no C99 compiler. You are limited to to C89 features with MS.
– StoryTeller
Nov 25 '18 at 8:29
Microsoft don't have a truly conforming C compiler. Specifically, no C99 compiler. You are limited to to C89 features with MS.
– StoryTeller
Nov 25 '18 at 8:29
3
3
AFAIK, VLAs are optional after C99. In any case, using VLAs is, IMHO, not a good habit. Almost as bad as alloca().
– GermanNerd
Nov 25 '18 at 8:34
AFAIK, VLAs are optional after C99. In any case, using VLAs is, IMHO, not a good habit. Almost as bad as alloca().
– GermanNerd
Nov 25 '18 at 8:34
1
1
@SouravGhosh - Well.. MS supports alloca. So I daresay that particular utility fares better than VLA's in that regard.
– StoryTeller
Nov 25 '18 at 9:16
@SouravGhosh - Well.. MS supports alloca. So I daresay that particular utility fares better than VLA's in that regard.
– StoryTeller
Nov 25 '18 at 9:16
3
3
Those concerns apply to any use of the stack, not just VLAs
– M.M
Nov 25 '18 at 9:53
Those concerns apply to any use of the stack, not just VLAs
– M.M
Nov 25 '18 at 9:53
3
3
Also it is useful to be able to use variably-modified type for dynamic allocation
– M.M
Nov 25 '18 at 10:02
Also it is useful to be able to use variably-modified type for dynamic allocation
– M.M
Nov 25 '18 at 10:02
|
show 15 more comments
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53465813%2fwhy-i-cannot-use-vla-when-writing-c-codes-in-visual-studio-2017%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53465813%2fwhy-i-cannot-use-vla-when-writing-c-codes-in-visual-studio-2017%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
Microsoft don't have a truly conforming C compiler. Specifically, no C99 compiler. You are limited to to C89 features with MS.
– StoryTeller
Nov 25 '18 at 8:29
3
AFAIK, VLAs are optional after C99. In any case, using VLAs is, IMHO, not a good habit. Almost as bad as alloca().
– GermanNerd
Nov 25 '18 at 8:34
1
@SouravGhosh - Well.. MS supports alloca. So I daresay that particular utility fares better than VLA's in that regard.
– StoryTeller
Nov 25 '18 at 9:16
3
Those concerns apply to any use of the stack, not just VLAs
– M.M
Nov 25 '18 at 9:53
3
Also it is useful to be able to use variably-modified type for dynamic allocation
– M.M
Nov 25 '18 at 10:02